GitHub SSH 配置使用

SSH 配置(GitHub 官方文档)


#打开 Terminal(终端)。
 
输入 ls -al ~/.ssh 以查看是否存在现有 SSH 密钥:
 
$ ls -al ~/.ssh
# Lists the files in your .ssh directory, if they exist
检查目录列表以查看是否已经有 SSH 公钥。 默认情况下,公钥的文件名是以下之一:
id_rsa.pub
id_ecdsa.pub
id_ed25519.pub
  1. 如果没有或者想为github提供单独的秘钥对,则进行创建秘钥对
$ ssh-keygen -t rsa -C "[email protected]"

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

  1. 以上代码省略了 -f 参数,因此,运行上面那条命令后会让你输入一个文件名,用于保存刚才生成的 SSH key 代码,如:
Generating public/private rsa key pair.
# Enter file in which to save the key (/c/Users/you/.ssh/id_rsa): [Press enter]
  1. 又会提示你输入两次密码(该密码是你push文件的时候要输入的密码,而不是github管理者的密码),当然,你也可以不输入密码,直接按回车。那么push的时候就不需要输入密码,直接提交到github上了,如:
Enter passphrase (empty for no passphrase): 
# Enter same passphrase again:
  1. 接下来,就会显示如下代码提示,如:
Your identification has been saved in /c/Users/you/.ssh/id_rsa.
# Your public key has been saved in /c/Users/you/.ssh/id_rsa.pub.
# The key fingerprint is:
# 01:0f:f4:3b:ca:85:d6:17:a1:7d:f0:68:9d:f0:a2:db [email protected]
  1. 当你看到上面这段代码的收,那就说明,你的 SSH key 已经创建成功,你只需要添加到github的SSH key上就可以了。

GitHub SSH配置(GitHub 官方文档)

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

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

    GitHub SSH 配置使用_第1张图片

  3. 测试该配置

$ ssh -T [email protected]
# Attempts to ssh to GitHub

管理远程仓库 → 远程 HTTPS 切换为 SSH (GitHub官网)

  1. 列出现有远程仓库以获取要更改的远程仓库的名称。
$ git remote -v
> origin  https://github.com/USERNAME/REPOSITORY.git (fetch)
> origin  https://github.com/USERNAME/REPOSITORY.git (push)
  1. 【方法1】使用 git remote set-url 命令将远程的 URL 从 HTTPS 更改为 SSH。
$ git remote set-url origin [email protected]:USERNAME/REPOSITORY.git
  1. 【方法2】使用 git remote rm add 重新添加远程仓库
$ git remote rm origin
$ git remote add origin [email protected]:USERNAME/REPOSITORY.git
  1. 验证远程 URL 是否已更改。
$ git remote -v
# Verify new remote URL
> origin  [email protected]:USERNAME/REPOSITORY.git (fetch)
> origin  [email protected]:USERNAME/REPOSITORY.git (push)

你可能感兴趣的:(github,ssh,github,git)