同一服务器中的两个用户Git和两个不同的项目

时间:2014-01-11 00:14:31

标签: git github ssh

我有两个帐户Github(UserA和UserB)

我有两个项目(projectA e ProjectB)

两者(私人)

我有三台服务器(服务器A,服务器B,本地)

在服务器A中我有ProjectA,我可以做推送合并提交等...

root@UserA:~/.ssh# ssh -T git@github.com
Hi UserA! You've successfully authenticated, but GitHub does not provide shell access.

在服务器B中我有ProjectB,我可以做推送合并提交等...

root@UserB:~/.ssh# ssh -T git@github.com
Hi UserB! You've successfully authenticated, but GitHub does not provide shell access.

在本地服务器中我想要存储库和用户以及两个项目。对于现在我只有UserA(ssh键)

我尝试复制

id_rsa.github.projectB 
id_rsa.github.projectB.pub

我有

项目A

id_rsa.github 
id_rsa.github.pub

项目B

id_rsa.github.projectB 
id_rsa.github.projectB.pub

到本地服务器中的/root/.ssh并创建此文件

# account per UserA
Host github.com-UserA
    HostName github.com
    User UserA
    IdentitiesOnly yes
    IdentityFile ~/.ssh/id_rsa

# account for the UserB (UserB)
Host github.com-UserB
    HostName github.com
    User UserB
    IdentitiesOnly yes
    IdentityFile ~/.ssh/id_rsa.github.projectb

对于.git / config中的projectA我有相同的ServerA配置(右代表) 对于.git / config中的projectB,我有相同的ServerB配置(右代表)

我可以在同一服务器中使用两个不同的用户,使用不同的帐户和不同的SSH吗?

由于

1 个答案:

答案 0 :(得分:1)

在我.git/config我必须改变

url = git@github.com:UserB/ProjectB.git

url = git@github.com-UserB:UserB/ProjectB.git

UserB位于/root/.ssh/config

的位置
Host github.com-UserB

http://www.freshblurbs.com/blog/2013/06/22/github-multiple-ssh-keys.html