本文共 1691 字,大约阅读时间需要 5 分钟。
使用SourceTree推送报错 "error: RPC failed; curl 55 Recv failure: Connection was reset"
一,遇到问题
提交项目时停了到这个界面很长时间…
等来的却是报错,告诉我提交失败… 报错原文
git -c diff.mnemonicprefix=false -c core.quotepath=false --no-optional-locks commit -q -F C:\Users\25924\AppData\Local\Temp\jh2zoq3f.4ns
git -c diff.mnemonicprefix=false -c core.quotepath=false --no-optional-locks push -v --tags --set-upstream origin master:master POST git-receive-pack (88465735 bytes) error: RPC failed; curl 55 Recv failure: Connection was reset fatal: the remote end hung up unexpectedly fatal: the remote end hung up unexpectedly Pushing to http://172.28.60… Everything up-to-date 完成时带有错误,见上文。
之前一直好用的,突然不好用了,很困惑, , ,
二,尝试解决
上网查了下有几种解决方法,虽然没有解决我的问题,万一能解决你遇到的问题呢
1. 使用SSH密钥
打开方式:[工具 -> 选项 -> 一般 -> SSH客户端]
修改为OpenSSH的形式,然后上面选择你自己的SHH密钥。 PS:反正我这尝试了, 没有用. 我之前用的就是默认的, 现在两种方式选择哪一个都没有解决我遇到的这个问题。2. 取消勾选代理服务器
打开方式:[工具 -> 选项 -> 网络]
PS:我原来就没有勾选啊,呜呜┭┮﹏┭┮…
3. 修改git配置加大httpBuffer
请看完此项再决定是否尝试此操作
在SourceTree打开命令行模式:输入下面命令,查看自己的git配置:
git config -l
加大http.Buffer,执行下面命令后在使用 ‘git config -l’ 命令看下, buff大小是否执行成功 ,然后再次尝试推送。
git config --global http.postBuffer 524288000
后来我发现: 这个加大buff的报错是这样的 :
RPC failed; curl 56 Recv failure: Connection was reset. 而我遇到的问题报错使这样的, RPC failed; curl 55 Send failure: Connection was aborted 一个是链接被终止, 一个是连接被重置…三,解决问题
使用命令行模式推送结果也是这样的, 这说明并不是SourceTree的问题
因为之前好用,这次提交推送莫名的不好用了, 那么我猜测有有可能是这次提交的内容有问题;
根据此推测我重新克隆了一个新的工程到本地,然后随便修改了一个文本, 然后暂存,推送一气呵成, 完全没有问题;
这次可以确定了, 就是我此次推送的内容有问题,我这次推送的出了正常的Unity工程逻辑修改, 还将Unity导出的Android工程进行了提交, 我怀疑就是这个工程内容提交时出现了问题。
上述使用SourceTree的寄存地址的, 而后我再上传同样的工程, 也是没有问题的。
初步结论:GitLab上传较大文件时,耗时较长,容易出现网络中断的情况,导致出现此情况。
解决方案一:上传较大文件时分批次上传。 解决方案二:使用国内代码托管。若有不同见解,欢迎您留言解惑;如果你也遇到了类似问题,不妨也在评论区留言吧,以便帮助更多的同学。
转载地址:https://czhenya.blog.csdn.net/article/details/110128989 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!