在Windows Server上的SSH上执行git pull命令永远挂起

时间:2020-03-30 17:50:52

标签: git ssh windows-server-2012 git-pull

我有一个安装有bitvise ssh服务器的Windows Server 2012,除了git和git bash之外,我还设置了一个虚拟用户,并且git对包含git存储库的文件夹具有完全权限(我们称之为GR)。 现在,当我通过删除桌面连接打开服务器并使用cmd打开GR文件夹并执行git pull时,一切都会按预期进行,并且我得到了最新的提交。但是,当我通过ssh客户端连接到服务器并将目录cd更改为GR文件夹并执行git pull时,执行将永远挂起,并且无法正常工作。 我尝试将bitvise更改为PowerShell,但是得到了相同的结果,因此任何人都可以帮助我如何在Windows服务器上的ssh上运行git pull命令。

注意:我更改了Windows服务器bitvise的ssh默认端口,但没有用

2 个答案:

答案 0 :(得分:1)

您是否已打开服务器上所有必需的端口?防火墙流量?您可以尝试执行git pull --trace-ascii

这应该给您更多的概述。

答案 1 :(得分:0)

我设法解决了以下问题:

  • 执行GIT_TRACE = 1,这会给我git命令卡在哪里19:07:59.137016 run-command.c:643 trace: run_command: git-credential-manager get
  • 现在我知道ssh无法访问窗口凭证管理器,因此我需要一种在git pull命令中提供凭证的方法,因为我使用的是git clone https://username:token@gitlab.com/user/repo.git