跳到主要内容

Git SSH Key

2024年04月27日
柏拉文
越努力,越幸运

一、Mac 系统配置


1.1 创建 ssh 目录

生成ssh目录(如果之前有目录,可以忽略)

mkdir .ssh 

1.2 生成 ssh

ssh-keygen -t rsa -C "zwq18235130928@163.com"

1.3 自定义 ssh 名字

Enter file in which to save the key (/Users/{EmailUserName}/.ssh/id_rsa): id_rsa_github_bolawen

1.4 ssh-add 添加 ssh key

ssh-key 添加到 ssh agent 中:(默认的话是会自动加入 ssh agent 中的,但是我们重命名了,需要手动加一下)

ssh-add ~/.ssh/id_rsa_github_bolawen

1.5 创建 config 文件

vim config
# git@github.com:bolawen/SSR.git
Host github.com
HostName github.com
IdentityFile ~/.ssh/id_rsa_github_bolawen

# git@git.umu.work:usd/umu_android.git
Host git.umu.work
HostName git.umu.work
IdentityFile ~/.ssh/id_rsa_github_umu

1.6 前往 github 配置

将生成的 id_rsa_github_bolawen.pub 文件内容复制, 配置到 github 中即可。

1.6 问题

问题一、如果遇到 load key id_rsa bad permissions

  • 原因:

  • 解决:

    sudo chmod -R 700 ~/.ssh/id_rsa.pub

问题二、如果遇到 Load key "/home/xxx/.ssh/id_rsa.pub": invalid format

  • 原因: 原因是1.7.x版.ssh/config 中的IdentityFile设为id_rsa.pub,而2.x版的是要设为id_rsa, 编辑当前用户的.ssh/config

  • 解决:

    Host github.com
    HostName github.com
    IdentityFile ~/.ssh/id_rsa_github_bolawen

    Host git.umu.work
    HostName git.umu.work
    IdentityFile ~/.ssh/id_rsa_github_umu

问题三、如果执行 ssh-add ./id_rsa_github_bolawen 遇到 Could not open a connection to your authentication agent.

  • 解决: 在执行 ssh-add ./id_rsa_github_bolawen 之前首先执行以下命令:

    // 先执行 ssh-agent -s
    eval `ssh-agent -s`

    // 后执行 ssh-add ./id_rsa_github_bolawen
    ssh-add ./id_rsa_github_bolawen

二、Windows 系统配置