Git配置SSH

在新的公司总是各种忙碌,但是忙碌的生活让自己充足。这些就不扯了,讲点ssh的哈,配置ssh没有想象中的那么难,只是你不了解哈。ssh的好处就不多赘述了,直接开始干货。

检测是否已经存在key以及配置key

检测key
cd ~/.ssh   #对应的文件夹
ls     #目录

如果存在(id_rsa.pub 或 id_dsa.pub文件)则跳过生成key进入显示key

生成key

若未存在则生成新的key:

ssh-keygen -t rsa -C "[email protected]"

代码参数含义:

  • t 指定密钥类型,默认是 rsa ,可以省略。
  • C 设置注释文字,比如邮箱。
  • f 指定密钥文件存储文件名。

以上代码省略了 -f 参数,因此,运行上面那条命令后会让你输入一个文件名,用于保存刚才生成的 SSH key 代码,如:

Generating public/private rsa key pair.
Enter file in which to save the key (/Users/zhouyonggui/.ssh/id_rsa):

当然,你也可以不输入文件名,使用默认文件名(推荐),那么就会生成 id_rsa 和 id_rsa.pub 两个秘钥文件。

接着又会提示你输入两次密码(该密码是你push文件的时候要输入的密码,而不是github管理者的密码),当然,你也可以不输入密码,直接按回车。那么push的时候就不需要输入密码,直接提交到github上了,如:

Enter passphrase (empty for no passphrase):
Enter same passphrase again:

下一步:

Your identification has been saved in /Users/zhouyonggui/.ssh/id_rsa.
Your public key has been saved in /Users/zhouyonggui/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:c+MJV8oBO4cCTyzk2uOztyzDABtcemYaCtWjx/3FyaU [email protected]
The key's randomart image is:
+---[RSA 2048]----+
|   oo.. .        |
|  .o++.  +  .    |
|..oo.+o +oo+.    |
|++.*o .. +E+     |
|o+B.o  .S.*      |
|o... .  .* o     |
|   oo     o      |
|    ++.          |
|    .+o.         |
+----[SHA256]-----+
显示key

已存在,进入编辑获取对应的key:

cd ~/.ssh
vim id_rsa.pub

当然还可以更简单粗暴点直接pbcopy

pbcopy < ~/.ssh/id_rsa.pub

添加SSH key到GitHub or GitLab

添加SSH key到GitHub
  • 首先你需要拷贝 id_rsa.pub 文件的内容,你可以用编辑器打开文件复制,也可以用git命令复制该文件的内容,如:
clip < ~/.ssh/id_rsa.pub
  • 登录你的github账号,从右上角的设置( Account Settings )进入,然后点击菜单栏的 SSH key 进入页面添加 SSH key。

  • 点击 Add SSH key 按钮添加一个 SSH key 。把你复制的 SSH key 代码粘贴到 key 所对应的输入框中,记得 SSH key 代码的前后不要留有空格或者回车。当然,上面的 Title 所对应的输入框你也可以输入一个该 SSH key 显示在 github 上的一个别名。默认的会使用你的邮件名称。

添加SSH key到GitLab
  • 拷贝id_rsa.pub
  • 登录GitLab账号,从右上角Profile进入SSK Keys添加key

测试SSH

#GitHub
ssh -T [email protected]
#GitLab
ssh -T [email protected]

当你输入以上代码时,会有一段警告代码,如:

The authenticity of host 'github.com (207.97.227.239)' can't be established.
# RSA key fingerprint is 16:27:ac:a5:76:28:2d:36:63:1b:56:4d:eb:df:a6:48.
# Are you sure you want to continue connecting (yes/no)?

这是正常的,你输入 yes 回车既可。如果你创建 SSH key 的时候设置了密码,接下来就会提示你输入密码,如:

Enter passphrase for key '/c/Users/Administrator/.ssh/id_rsa':

密码正确后你会看到下面这段话,如:

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

总结

总的就这些了,简单粗暴没多少东西哈基本就是一个步骤流程化就行了。如果在配置有疑问可以留言哈。

你可能感兴趣的:(Git配置SSH)