使用 ssh 访问 Github (从创建密钥到 clone 仓库)
最近在打编译器设计赛,帮队友配置 git 的时候发现配置 ssh 的部分每次要看好几篇文章,现在用这一篇文章就可以在一台新的 Linux 系统上快速使用 ssh 访问 Github 进行开发。
创建 ssh 密钥
$ ssh-keygen -t ed25519 -C "[email protected]"
如果不支持 ed25519,可以使用:
$ ssh-keygen -t rsa -b 4096 -C "[email protected]"
中间会需要选择密钥的创建位置等:
> Enter a file in which to save the key (/c/Users/YOU/.ssh/id_ALGORITHM):[Press enter]
密钥默认生成在 ~/.ssh/id_ALGORITHM
,
ALGORITHM
即上面创建密钥时使用的算法
~/.ssh/id_ALGORITHM.pub
为公钥文件;
~/.ssh/id_ALGORITHM
为私钥文件;
添加 ssh 公钥到 GitHub
执行
$ cat ~/.ssh/id_ALGORITHM.pub
复制输出的公钥
在 Github User Setting -> SSH and GPG keys 页面添加 ssh 公钥。
启用 ssh agent
$ eval "$(ssh-agent -s)"
然后将我们的密钥交给 ssh-agent 管理
$ ssh-add ~/.ssh/id_ALGORITHM
在 ~/.ssh/
目录下新建一个 config 文件
$ touch ~/.ssh/config
编辑加入以下内容:
HOST github.com
User git
ForwardAgent yes
测试
现在已经配置好了 ssh 可以用以下命令进行测试:
使用这个命令检查密钥是否被加入 ssh-agent
$ ssh-add -L
使用这个命令检查是否已经可以使用 ssh 访问 Github:
$ ssh -T [email protected]
如果以上命令返回了 success ,那么已经可以使用 ssh 访问 Github了!
Clone 仓库
接着我们就能用下面的命令 clone 仓库了。
$ git clone <url>
refs: