使用 SSH 方式拉取代码

简介: 使用 SSH 方式拉取代码

使用 SSH 方式拉取代码

大家在使用 git 拉取代码时,是否曾遇到过类似 OpenSSL SSL_read: Connection was reset, errno 10054 的报错信息,解决方案参考

大概率原因出在网络身上,为避免各种修改代理,本机 host 等繁琐操作,推荐大家使用SSH方式拉取代码。那么首先需要先完成SSH基本配置,下面是详细配置过程

通过SSH方式拉取代码

如果你还不了解 git 中的一些基本知识,请参考这里

1.配置用户名和邮箱

$ git config --global user.name "用户名"
$ git config --global user.email "用户邮箱"

2.生成密钥

首先查看设备上是否已生成过秘钥

$ cd ~/.ssh    //进入指定路径文件夹
$ ls           //查看文件夹下内容

看一下有没有 id\_rsaid_rsa.pub 等文件,.pub 文件是公钥,另一个文件是密钥

若没有这些文件,或没有 .ssh 目录,则使用 ssh-keygen 命令来创建

$ ssh-keygen -t rsa -C "你的邮箱"

如有提示信息,点击 enter 即可,不需要设置密码! 难道你想在每次提交代码前输入一遍密码吗?

成功后会提示

Your public key has been saved in /home/you/.ssh/id_rsa.pub.
The key fingerprint is: 

3.进入 .ssh 文件夹,查找公钥

进入指定路径 .ssh 文件夹中,用记事本打开 id_rsa.pub,全选复制内容

也可通过指令查看

$ cat ~/.ssh/id_rsa.pub

例如:

ssh-rsa your secret email@email.com

4.进入代码托管平台,上传密钥

下面以 GitHub 为例,演示相关操作过程

1.登陆 github 帐户,点击你的头像,然后 Settings -> SSH and GPG keys -> New SSH key

2、然后你复制上面的公钥内容,粘贴进 key 文本域内。 title 域,自己随便起个名字

3、点击 add key

完成以后,验证下这个key是不是正常工作:

$ ssh -T git@github.com
Attempts to ssh to github

如果,看到如下信息提示

Hi xxx! You've successfully authenticated, but GitHub does not # provide shell access.

恭喜,配置成功!

5.找到项目仓库 SSH 地址

使用命令 git remote \-v 查看你当前的 remote url

$ git remote -v
origin https://github.com/username/project.git (fetch)
origin https://github.com/username/project.git (push)

如果是以上的结果那么说明此项目是使用 https 协议进行访问的;如果地址是 git 开头则表示是 git 协议

登陆你的 github 账户,查看项目仓库 ssh 协议的 URL

复制 ssh 链接,使用命令 git remote set-url 修改 remote-url,例如:

git remote set-url origin git@github.com:username/project.git

最后使用命令

git remote -v

检测 URL 是否已修改为 SSH 地址

6.日后使用此地址提交/拉取代码即可




相关文章
|
2月前
|
移动开发 监控 安全
通过SSH协议实现的屏幕局域网电脑监控:屏幕安全访问代码
随着科技的不断发展,网络安全问题愈发突出。为了确保屏幕数据的安全,我们需要一种高效可靠的监控方法。本文介绍了一种基于SSH协议的屏幕局域网电脑监控方案,同时提供了相关代码示例,确保屏幕数据的安全传输和访问。
260 0
|
11月前
|
存储 运维 安全
【运维知识高级篇】一篇文章带你搞懂GitHub基础操作!(注册用户+配置ssh-key+创建项目+创建存储库+拉取代码到本地+推送新代码到Github)
【运维知识高级篇】一篇文章带你搞懂GitHub基础操作!(注册用户+配置ssh-key+创建项目+创建存储库+拉取代码到本地+推送新代码到Github)
202 0
|
2月前
|
存储 Java API
入职之后发现代码居然是祖传代码肿么办?(SSH->微服务)
入职之后发现代码居然是祖传代码肿么办?(SSH->微服务)
|
9月前
|
Shell Linux 网络安全
git实战—Gerrit配置SSH key & 下载代码到本地 & 使用VScode编辑器编辑提交代码——2023.07
git实战—Gerrit配置SSH key & 下载代码到本地 & 使用VScode编辑器编辑提交代码——2023.07
563 0
|
9月前
|
网络协议 Ubuntu Linux
无公网IP内网穿透使用vscode配置SSH远程ubuntu随时随地开发写代码-2
无公网IP内网穿透使用vscode配置SSH远程ubuntu随时随地开发写代码
|
9月前
|
Ubuntu 网络安全 数据安全/隐私保护
无公网IP内网穿透使用vscode配置SSH远程ubuntu随时随地开发写代码-1
无公网IP内网穿透使用vscode配置SSH远程ubuntu随时随地开发写代码
|
11月前
|
Linux 网络安全 数据安全/隐私保护
|
12月前
|
Linux 网络安全
通过 vscode Remote-SSH 远程开发Linux上的代码
通过 vscode Remote-SSH 远程开发Linux上的代码
154 0
|
安全 Linux Shell
Git使用ssh密钥推送代码到仓库/拉取代码
Git使用ssh密钥推送代码到仓库/拉取代码
534 0
|
Java 关系型数据库 MySQL
基于Java 中 SSH 框架的 物流配送管理系统 附完整代码 毕业设计
基于Java 中 SSH 框架的 物流配送管理系统 附完整代码 毕业设计
232 0
基于Java 中 SSH 框架的 物流配送管理系统 附完整代码 毕业设计