我正在尝试从我们公司存储库克隆内部存储库,但不断收到此错误:
error: RPC failed; result=18, HTTP code = 200
它总是仅在存储库完全下载后才会发生(需要一段时间)。
我尝试过使用 torotiseGit。这是报告:
git.exe clone --progress -v "http://path/repository.git" "C:\Users\user\Documents\code\repository"
Cloning into 'C:\Users\user\Documents\code\repository'...
POST git-upload-pack (424 bytes)
remote: Compressing objects: 100% (4895/4895)
Receiving objects: 100% (6970/6970), 61.89 MiB | 4.82 MiB/s
Resolving deltas: 100% (2610/2610)
Resolving deltas: 100% (2610/2610), done.
remote: Total 6970 (delta 2610), reused 5702 (delta 1672)
error: RPC failed; result=18, HTTP code = 200
git did not exit cleanly (exit code 128)
我已经在 Linux 机器和 Windows 机器上尝试过几次。同样的错误
我如何进一步调查该错误?
我在 Google 上找不到任何有用的信息
编辑:我检查了 Git 服务器上的 Apache 日志 - 每个克隆都有对应的 GET 和 POST (结果为 200)。 POST 有点大(60MB) - 所以我尝试将 postBuffer 增加到 500MB,但错误仍然发生
这真的是一个 git bug 吗?
我希望它能提供更多信息错误......
错误:RPC失败;结果=18,HTTP 代码=200是一个 libcurl 错误。
From http://curl.haxx.se/libcurl/c/libcurl-errors.html我们可以看到这是:
CURLE_PARTIAL_FILE (18)
文件传输比预期短或大。发生这种情况时
服务器首先报告预期的传输大小,然后交付
与先前给定大小不匹配的数据。
您可以在运行克隆等命令之前设置 GIT_CURL_VERBOSE=1 以了解 libcurl 失败的原因。这可以在 bash 中通过以下方式完成:
GIT_CURL_VERBOSE=1 git clone --progress -v ...
但是鉴于上述错误,您应该尝试调整http.postBuffer. Try:
git config --global http.postBuffer 524288000
从这里https://www.kernel.org/pub/software/scm/git/docs/git-config.html
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)