Mac 下配置多个Git 账号
1. 清除全局设置的用户名和邮箱
- 执行
git config --global --unset user.name
git config --global --unset user.email
- 验证一下是否删除成功
git config --global user.name
git config --global user.email
2. 生产新的SSH Keys
- 执行命令
cd ~/.ssh
ssh-keygen -t rsa -C "email"
- 然后自定义文件名称
id_rsa_gitee
默认名称是id_rsa
Enter file in which to save the key (~路径/.ssh/id_rsa): id_rsa_gitee
- 验证
SSH Keys
是否生成成功
cd ~/.ssh
ls
cat id_rsa_gitlab.pub
cat id_rsa_gitee.pub
3. 添加并识别SSH Keys
- 系统默认读取的是
id_rsa
ssh-agent bash
ssh-add ~/.ssh/id_rsa_gitee
ssh-add ~/.ssh/id_rsa_gitlab
4.将新的SSH Keys 添加到 git 账号的 SSH 中
- 复制
SSH Keys
pbcopy < id_rsa_gitee.pub
pbcopy < id_rsa_gitlab.pub
- 添加到
gitee
或者gitlab
的ssh
中
5.创建并配置 config 文件
- 创建文件并打开
touch ~/.ssh/config #创建文件
open ~/.ssh/config #打开文件
- 添加文件内容
// Gitee 配置
Host gitee //网站别名
HostName gitee.com //托管网站域名
User <#username#> //托管网站上的用户名
IdentityFile ~/.ssh/id_rsa_gitee //使用的密钥文件
// Gitlab 配置
Host gitlab //网站别名
HostName git.nucarf.cn //托管网站域名
User <#username#> //托管网站上的用户名
IdentityFile ~/.ssh/id_rsa_gitlab //使用的密钥文件
6. 验证连接git
ssh -T git@gitee.com
ssh -T git@nucarf.cn
//执行成功打印
// Hi XXX! You've successfully authenticated, but GITEE.COM does not provide shell access.
// Welcome to GitLab, @XXXXX!
常见问题
Permission denied(Publickey)
-
公钥和私钥不匹配,可能其中的一个错了
-
私钥重写添加一次
ssh-agent bash
ssh-add ~/.ssh/id_rsa_gitee
- 如果不行,建议重新执行上述流程
转载自:https://juejin.cn/post/7031193751393566733