前言:
多人使用的服务器上配置git,可能会有多个账户,有时会出现报错
ERROR: Repository not found,
fatal: 无法读取远程仓库。
这个不同账户不同sshkey是产生了冲突
解决方案
参考博客 https://czero000.github.io/2016/10/20/git-different-sshkey.html
创建不同的ssh_key
ssh-keygen -t rsa -C 'user@mail.com' -f id_rsa_github1
ssh-keygen -t rsa -C 'user@mail.com' -f id_rsa_github2
在~/.ssh/config中指定不同仓库使用的ssh_key,其中别名可以自己修改
Host github1.com \\ 别名
hostname github.com \\ 仓库地址
IdentityFile ~/.ssh/id_rsa.github \\ ssh-key
Host github2.com
hostname github.com
IdentityFile ~/.ssh/id_rsa.github2
最后在git仓库中,修改.git/config文件中的url 示例中的github2即为对应的别名。这样不同仓库可以通过不同的别名使用不同的ssh_key文件了。
[remote "origin"]
url = git@github2:xxxx/yyyy.git
另外,在.git/config中也可以指定用户名和邮箱
[user]
name =xxxx
email =yyyy@zz.com
这样就可以不同的git仓库互不影响了