引言

在本文中,我们一起完成 Git 和 GitHub 的绑定,体验通过 Git 向 GitHub 提交代码的能力。

在这之前,我们需要先了解 SSH(安全外壳协议),因为在 GitHub 上,一般都是通过 SSH 来授权的,而且大多数 Git 服务器也会选择使用 SSH 公钥来进行授权,所以想要向 GitHub 提交代码,首先就得在 GitHub 上添加 SSH key配置。

第 1 步:生成 SSH key

我们要想生成SSH key,首先就得先安装 SSH,对于 Linux 和 Mac 系统,其默认是安装 SSH 的,而对于 Windows 系统,其默认是不安装 SSH 的,不过由于我们安装了 Git Bash,其也应该自带了 SSH. 可以通过在 Git Bash 中输入ssh命令,查看本机是否安装 SSH。

接下来,输入ssh-keygen -t rsa命令,表示我们指定 RSA 算法生成密钥,然后敲三次回车键,期间不需要输入密码,之后就就会生成两个文件,分别为id_rsa和id_rsa.pub,即密钥id_rsa和公钥id_rsa.pub. 对于这两个文件,其都为隐藏文件,默认生成在以下目录(也可能不是以下路径):

  • Linux 系统:~/.ssh
  • Mac 系统:~/.ssh
  • Windows 系统:C:\Users\username\.ssh
  • Windows 10 ThinkPad:C:\Users\think.ssh
    密钥和公钥生成之后,我们要做的事情就是把公钥id_rsa.pub的内容添加到 GitHub,这样我们本地的密钥id_rsa和 GitHub 上的公钥id_rsa.pub才可以进行匹配,授权成功后,就可以向 GitHub 提交代码啦!

第 2 步:添加 SSH key

  1. 进入 GitHub 主页,先点击右上角所示的倒三角▽图标,然后再点击Settins,进行设置页面;点击我们的头像亦可直接进入设置页面:

  2. 进入Settings页面后,再点击SSH and GPG Keys进入此子界面,然后点击New SSH key按钮:

  3. 只需要将公钥id_rsa.pub的内容粘贴到Key处的位置(Titles的内容不填写也没事),然后点击Add SSH key 即可。

第 3 步:验证绑定是否成功

在我们添加完SSH key之后,可以通过在 Git Bash 中输入ssh -T git@github.com进行测试:

1
2
ssh -T git@github.com
Hi zsyyblog! You've successfully authenticated, but GitHub does not provide shell access.

如上所示,此结果即为Git 与 GitHub 绑定成功的标志。