所以,因为我正在使用Webfaction,所以我遵循他们的git教程,并在我的git实例上运行它:
$ git config http.postBuffer 524288000
Run Code Online (Sandbox Code Playgroud)
为了清楚config起见,这是我的回购中的内容:
$ cat config
[core]
repositoryformatversion = 0
filemode = true
bare = true
[http]
receivepack = true
postBuffer = 524288000
Run Code Online (Sandbox Code Playgroud)
无论如何,这仍然会发生:
$ git push
Counting objects: 74, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (62/62), done.
error: RPC failed; result=22, HTTP code = 411
fatal: The remote end hung up unexpectedly
Writing objects: 100% (73/73), 3.67 MiB | 962 KiB/s, done.
Total 73 (delta 3), reused 0 (delta 0)
fatal: The remote end hung up unexpectedly
Run Code Online (Sandbox Code Playgroud)
古怪的是,我甚至没有推高那么多数据:只有大约120MB.现在我还是git的新手,所以我想我也可以发布我的本地.git/config文件:
$ cat .git/config
[core]
repositoryformatversion = 0
filemode = true
bare = false
logallrefupdates = true
[remote "origin"]
fetch = +refs/heads/*:refs/remotes/origin/*
url = http://USERNAME:PASSWORD@MY.DOMAIN.TLD/REPONAME.git
[branch "master"]
remote = origin
merge = refs/heads/master
Run Code Online (Sandbox Code Playgroud)
老实说,我完全没有想法.如果有人能看出我做错了什么,我真的很感激.请注意,我知道我可以通过SSH执行此操作,但这对我的方案来说并不理想.
因此,一些盲目的调整(以及一些睡眠)后,我意识到,这个问题实际上是在那里我遇到了postBuffer命令.我在repo端运行它,而不是在客户端.一旦我运行它客户端一切都工作得很好.
很抱歉让大家感到困惑.