git push 失败-权限和 ssh 保持活动检查-还有什么?

git push 失败-权限和 ssh 保持活动检查-还有什么?

我将我的 git 服务器迁移到了新服务器,现在我尝试将我的数据推送到新服务器。

尝试推送时的日志

git.exe push --progress "originNew" master:master

Counting objects: 26735, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (14502/14502), done.
Writing objects:   2% (535/26735), 32.00 KiB | 45.00 KiB/s

在对话框中单击“确定”后 TortoiseGitPlink 致命错误:“网络错误:软件导致连接中止”上述文字更改为

git.exe push --progress "originNew" master:master

Counting objects: 26735, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (14502/14502), done.
fatal: sha1 file '<stdout>' write error: Broken pipe
fatal: The remote end hung up unexpectedly
fatal: The remote end hung up unexpectedly


git did not exit cleanly (exit code 128) (405265 ms @ 02.04.2018 12:16:21)

可能感兴趣:压缩到 99% (14430/14502) 需要约 6 秒,压缩到 100% (最后约 70 个项目) 需要约 6 分钟。


我已经做了什么:

权限: 使用仅包含 2 个文件的测试 repo 执行相同操作即可!

SSH 保持连接: 我更改了客户端上的 ssh_config 以包含

Host *
    ServerAliveInterval 25
    ServerAliveCountMax 40

这应该每 25 秒发送一个数据包(最多 40 次),所以如果我与 git 服务器的 ssh 连接处于空闲状态,它应该保持活动状态约 16 分钟。

高清: 客户端和服务器上有足够的空间


问题:

  1. 关于如何将我的数据推送到新服务器还有其他想法吗?
  2. 除了权限和空闲连接之外,还有其他什么原因可能导致这种情况吗?
  3. 我如何检查我更改的 ssh_config 文件是否正确?(由 TortoiseGit 使用)。我更改了“C:\Program Files\Git\etc\ssh”(仅找到一个)
  4. 我可以以某种方式调查是谁关闭了 ssh 连接吗?
  5. 客户端和服务器上的哪些日志文件可以帮助找到问题?我可以打开任何详细/调试标志吗?

答案1

好的,我修复了这个问题,不幸的是我没有发现问题是什么。但也许它能给有类似问题的人带来启发。

我做了什么:不是从客户端推送到新服务器:

  • 我在旧服务器上生成了密钥并从那里推送
  • 我将仓库从新服务器克隆到客户端上的新临时仓库
  • 我将更改从旧客户端仓库推送到临时客户端仓库
    (有些更改我无法再推送到旧服务器。不幸的是,我不记得是否尝试过从旧客户端仓库推送到新服务器)
  • 然后我终于把这些变化从临时仓库推送到了新的服务器仓库

现在一切正常。我终于可以从(新旧)客户端存储库拉取和推送到新服务器,而且速度非常快。与此同时,我删除了那个新的客户端存储库。

之前需要很长时间的压缩部分现在变得非常快。也许像重新打包这样的操作会有所帮助?!

祝你好运

相关内容