我正在尝试配置另一个GitHub帐户,以便能够在我的计算机上工作。我开始环顾四周,found:
通过创建/修改〜/ .ssh / config设置多个ssh配置文件。请注意略有不同的“主机”值:
因为我(已经)有多个帐户正在运行(我不记得我是怎么做的)我想在~/.ssh/config
中添加另一个条目。但似乎我没有这样的档案。也许它位于其他地方?或者我的机器可能以其他方式配置?从哪里开始搜索?
答案 0 :(得分:3)
这是 ssh 而不是git的行为。
在~/.ssh
文件夹中,您拥有私钥。默认情况下,私钥文件的名称为id_rsa
。当你的ssh客户端必须登录到ssh服务器时,它会从该文件中读取密钥。
但在某些情况下,您可能希望使用不同的私钥进行身份验证。在这种情况下,您创建文件~/.ssh/config
并添加一个带别名的部分(您在命令行中写入的主机名)真实主机名和本地系统上备用密钥文件的路径:
# ~/.ssh/config
Host alternative-github
HostName github.com
User MyOtherGithubUser
IdentityFile /media/me/MyUsbThumbDrive/.ssh/MyOtherGithubUsers-id_rsa
使用此配置 ssh 在我的UBS拇指驱动器上查找私钥,当我克隆这样的回购时:
git clone git@alternative-github:/MyOtherGithubUser/someRepositoty.git
只要您对git项目使用相同的公钥/私钥对,并且私钥可用~/.ssh/id_rsa
,您就不需要文件~/.ssh/config
。
答案 1 :(得分:0)
我想在
中添加另一个条目~/.ssh/config
你可以创建它,但是:
您需要生成具有不同名称的公钥/私钥
ssh-keygen -q -P "" -t rsa -f ~/.ssh/key2
您需要在远程服务器第二个帐户上注册~/.ssh/key2.pub
您需要配置文件:
Host github2
HostName github.com
User git
IdentityFile /home/me/.ssh/key2
请注意此处的用户:“git
”,不“another GitHub account
”
您需要更改原始远程URL以使用该条目:
git remote set-url origin github2:MySecondAccount/MyRepo.git