无法从命令窗口进行git pull操作,但可以在git bash中进行。

7 浏览
0 Comments

无法从命令窗口进行git pull操作,但可以在git bash中进行。

在命令窗口尝试git pull时,出现以下错误:

警告:将IP地址“[10.10.46.213]:2222”的RSA主机密钥永久添加到已知主机列表中。权限被拒绝(公钥)。致命错误:无法从远程存储库读取。请确保您具有正确的访问权限并且存储库存在。

然而,在git bash窗口中,我能够进行git pull操作。

有人知道为什么吗?

0
0 Comments

无法从命令提示符窗口进行git pull,但可以在git bash中进行git pull。这个问题出现的原因可能是在cmd和bash中进行了不同的配置,尤其是在密钥存储方面。

首先,检查cmd和bash中的环境变量PATH,检查git二进制文件的路径是否确实相同。如果路径不同,可能是因为你在两个地方分别安装了两个不同配置的git包。在这种情况下,要么删除其中一个并在两个shell中使用另一个,要么配置它们使用相同的选项/ sshtools / 路径。

如果在两个shell中使用的是同一个git客户端,它仍然可以使用不同的配置。通常,git使用你的“主目录”来存储密钥(即%HOME%.ssh文件夹)。检查cmd中%HOME%是否指向与git bash中的$HOME相同的目录。甚至可能是cmd中根本没有%HOME%。关于这个问题,可以在这个问题Git SSH client for windows and wrong path for .ssh/config file中找到更多信息。

你好,谢谢你的回答。我是通过以下方法解决的:在CMD中运行echo %HOME%,没有任何反应。在Git bash中运行echo $HOME,出现了C/。我通过添加一个名为HOME的环境变量,值为%USERPROFILE%,来解决这个问题。我将%HOME%添加到了PATH环境变量中,这样问题就解决了。

太好了,一切都好了!实际上,将HOME添加到PATH中是不必要的。如果你有时间进行测试,可以尝试将其从PATH中移除。一切应该仍然正常工作。PATH通常用于查找二进制文件,所以如果你在HOME位置没有安装任何东西,就不需要将其添加到PATH中。

0