Git同时配置github和gitee
想要同时使用GitHub和Gitee,但是每次输入密码就会很麻烦。为此,本文将介绍 Git 同时配置 github和 gitee 的ssh key
#查看git配置
git config --global --list
#没配置过的话先配置用户名和邮箱信息
git config --global user.name “username”
git config --global user.email “email”
#默认没有.ssh目录,
ssh-keygen -t rsa -C "xxxxxxx@xx.com"
#在windows下会生成.ssh目录 [c盘/用户/用户名/.ssh]
1. 查看ssh文件
cd ~/.ssh**
ls
2. 删除之前的.ssh
rm -rf id_rsa id_rsa.pub
3. 生成gitee和github 的 SSH Key
ssh-keygen -t rsa -C "xxxxxxx@xx.com" -f "id_rsa_github"
ssh-keygen -t rsa -C "xxxxxxx@xx.com" -f "id_rsa_gitee"
4. 查看SSH Key
cat id_rsa_github.pub**
5. 拷贝 ssh-rsa 开头的 ssh key,然后到github上添加ssh key
6. 添加 config解决ssh冲突
vim config
# 文件类容如下
# gitee
Host gitee.com
HostName gitee.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa_gitee
# github
Host github.com
HostName github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa_github
7. 测试是否配置成功
ssh -T git@gitee.com
ssh -T git@github.com
# 配置成功 正常会输出如下
Hi leanku! You've successfully authenticated, but GitHub does not provide shell access.
8. 已经配置了 SSH 密钥,但在 git push 时仍然要求输入用户名和密码
检查远程 URL,如果显示 https://…,说明 Git 仍然在使用 HTTPS 方式。
git remote -v
修改为 SSH URL,leanku/php-msf-docker项目为例
git remote set-url origin git@github.com:leanku/php-msf-docker.git
再次检查,输出应为
origin git@github.com:leanku/php-msf-docker.git (fetch)
origin git@github.com:leanku/php-msf-docker.git (push)