最近我已获得访问Github存储库的权限,该问题将称为work
,该存储库的访问权限已通过SSH密钥授予了我。
我为自己的帐户使用SSH密钥(我将其称为me
),这并没有给我带来任何问题,并且可以继续正常使用该帐户下的任何存储库。
我的config
文件设置如下
Host me.github.com
HostName github.com
User git
IdentityFile ~/.ssh/me
Host work.github.com
HostName github.com
User git
IdentityFile ~/.ssh/work
当我尝试使用ssh-add -l
时,两个密钥都显示出来,并且两个帐户都添加了正确的公共密钥。
发送命令ssh -T git@github.com
返回Hi me! You've successfully authenticated, but GitHub does not provide shell access.
,尽管如果我发送命令ssh -T git@work.github.com
则它以正确的方式响应。
通过git remote -v
验证,提取和推送的原始位置都设置为ssh链接。
我已经尝试following this gist,this Medium article,and this StackOverflow question以及其他一些方法都没有成功。
我可能还应该包括我在Chocolate 10上安装的Windows 10 LTSB build 14393,Powershell 5.1,git版本2.19.1.windows.1和posh-git 0.7.3.1上运行。
答案 0 :(得分:1)
首先,使用以下命令检查两个SSH密钥:
ssh -Tv me.github.com
ssh -Tv work.github.com
第二,您可以在回购中添加两个URL进行测试:
git remote set-url origin me.github.com:<auser>/<arepo>
git remote origin originWork work.github.com:<auser>/<arepo>
(URL中不需要git@
)
从那里,您可以使用一个或另一个起点拉/推。