在 window 服务器上通过 ssh 执行 git pull 命令永远挂起
Execute git pull command over ssh on window server hangs forever
我有一个 windows 服务器 2012,上面安装了 bitvise ssh 服务器,在 git 和 git bash 旁边,我设置了一个虚拟用户和 git 它对文件夹的完全权限包含一个 git 存储库(我们称之为 GR)。
现在,当我通过删除桌面连接打开服务器并使用 cmd 打开 GR 文件夹并执行 git pull
时,一切都按预期工作,我得到了最新的提交。但是当我通过 ssh 客户端连接到服务器并将目录 cd
更改为 GR 文件夹并执行 git pull
时,执行永远挂起并且无法正常工作。
我试图将 bitvise 更改为 PowerShell,但我得到了相同的结果,所以任何人都可以帮助我如何在 windows 服务器上通过 ssh 运行 git pull
命令。
注意:我更改了 windows 服务器 bitvise
的 ssh 默认端口,但没有用
您是否在服务器上打开了所有需要的端口?防火墙流量?你可以尝试执行 git pull --trace-ascii
这应该会给你更多的概述。
我设法解决了如下问题:
- 执行 GIT_TRACE=1 这告诉我 git 命令卡在哪里
19:07:59.137016 run-command.c:643 trace: run_command: git-credential-manager get
- 现在我知道 ssh 无法访问 window 凭据管理器,所以我需要一种方法来在 git pull 命令中提供凭据,因为我使用的是 GitLab I使用
git clone https://username:token@gitlab.com/user/repo.git
我有一个 windows 服务器 2012,上面安装了 bitvise ssh 服务器,在 git 和 git bash 旁边,我设置了一个虚拟用户和 git 它对文件夹的完全权限包含一个 git 存储库(我们称之为 GR)。
现在,当我通过删除桌面连接打开服务器并使用 cmd 打开 GR 文件夹并执行 git pull
时,一切都按预期工作,我得到了最新的提交。但是当我通过 ssh 客户端连接到服务器并将目录 cd
更改为 GR 文件夹并执行 git pull
时,执行永远挂起并且无法正常工作。
我试图将 bitvise 更改为 PowerShell,但我得到了相同的结果,所以任何人都可以帮助我如何在 windows 服务器上通过 ssh 运行 git pull
命令。
注意:我更改了 windows 服务器 bitvise
的 ssh 默认端口,但没有用
您是否在服务器上打开了所有需要的端口?防火墙流量?你可以尝试执行 git pull --trace-ascii
这应该会给你更多的概述。
我设法解决了如下问题:
- 执行 GIT_TRACE=1 这告诉我 git 命令卡在哪里
19:07:59.137016 run-command.c:643 trace: run_command: git-credential-manager get
- 现在我知道 ssh 无法访问 window 凭据管理器,所以我需要一种方法来在 git pull 命令中提供凭据,因为我使用的是 GitLab I使用
git clone https://username:token@gitlab.com/user/repo.git