无法从Sourcetree中拉出Git远程存储库

问题描述:

I生成了ssh密钥并配置了我的git和SourceTree。我可以从Git-bash中拉出并执行其他操作。 注意:我在.bashrc中添加了以下内容以使其正常工作。无法从Sourcetree中拉出Git远程存储库

eval `ssh-agent` 
ssh-add 

但是,当我尝试git拉在SourceTree中,我得到这个。

混帐-c diff.mnemonicprefix =假-c core.quotepath =虚假产地获取权限 拒绝(公钥,密码)。致命:无法从 远程存储库读取。

请确保您拥有正确的访问权限,并且存在知识库 。

当我尝试从Putty(windows)创建ssh-key时,它会更进一步,但会等待下面的消息!

混帐-c diff.mnemonicprefix =假-c core.quotepath =虚假产地获取的 服务器的主机密钥不会在注册表中缓存。您没有 保证服务器是您认为它的计算机。该 服务器的RSA2密钥指纹是:

支持SSH-RSA 2048 0F:EE:BB:1C:6C:B4:50:0E:54:D6:E9:55:9B:38:45:DF如果 请相信此主机,请输入“y”将密钥添加到PuTTY的缓存,并在连接时携带 。如果您只想继续连接一次,而没有 将密钥添加到缓存中,请输入“n”。如果您不信任此主机,请按回车键放弃连接。

如果我在SourceTree(它是git-bash)中打开终端,它会要求我输入密码。所以,我怀疑我的.bashrc不是由SourceTree提供的。还是我错过了别的?

我有同样的问题,对我来说,解决办法是用我的服务器(GitLab)手动调用plink.exe:

"C:\Program Files (x86)\Atlassian\SourceTree\tools\putty\plink.exe" gitlab.com 

y当问及现在你应该罚款!

+1

谢谢兄弟,它的工作 – vuhung3990

+1

它询问了登录名和密码。该怎么办?我使用rsa密钥。 – May12

+4

@ May12:在这个阶段不需要密码。只需点击“y”将密钥存储在缓存中。然后返回到SourceTree,你不应该再看到错误。 – SaeX

最好的解决方案是使用腻子获得连接。

在主机名上,放上你的gitlab项目的ssh地址。 然后点击'打开'进行连接。

就是这样。毕竟SourceTree信任gitlab.com。 你可以从下面的链接检查解决方案。 https://answers.atlassian.com/questions/31659457/windows-7-64bits-sourcetree-openssh-putty-git-pull-not-working

我改变客户端配置由腻子的OpenSSH。做了这份工作。撷取画面:

enter image description here

+0

在SourceTree v1.8.2.11上工作。 –

+1

谢谢。 (win7 64bit,sourcetree v1.8.2.11,ssh) – susemi99

+0

也可以,win10 64bit,sourcetree 1.8.2.11 – Nikola

我能够从“腻子/的Plink” SSH来“的OpenSSH”改变为SSH提供商来解决这个问题。

Menu Tools > Options then SSHClient, select OpenSSH