小编cod*_*ner的帖子

尝试将大文件推送到服务器时,Mercurial客户端错误255和HTTP错误404

问题:

19/06/10更新:更多证据问题是服务器端问题.在Windows 7命令行上接收此错误(请参阅下面的完整回溯):

URLError: <urlopen error [Errno 10054] An existing connection was forcibly closed by the remote host>
    abort: error: An existing connection was forcibly closed by the remote host
Run Code Online (Sandbox Code Playgroud)

当试图将包含6个大文件(.exe,.dmg等)的变更集推送到我的远程服务器时,我的客户端(MacHG)报告错误:

"推送期间出错.Mercurial报告错误号255:中止:HTTP错误404:未找到"

这个错误甚至意味着什么?!关于此提交,唯一唯一的(我可以告诉)是文件的大小,类型和文件名.如何确定变更集中的哪个确切文件失败?如何从存储库中删除损坏的变更集?在另一篇文章中,有人报告使用"mq"扩展来有效地从存储库中的历史记录中删除错误的变更集,但是对于我正在尝试解决的问题,mq看起来过于复杂.


背景:

我可以使用MacHG和toirtoise HG推送和提取以下内容:源文件,目录,.class文件和.jar文件进出服务器.

我成功地向我的本地存储库添加了第一次添加6个大型.exe,.dmg等安装程序文件(总共约130Mb).

在我对本地存储库的以下提交中,我删除了("未跟踪"/忘记)导致问题的6个文件,但是先前(失败的)更改集仍然排队等待推送到服务器(即我的本地主机正在尝试推送"添加"然后"移除"到远程服务器 - 并与源控制系统中的"保持历史中的一切"理念保持一致.

我可以使用Windows PC上的TortoiseHG提交.txt .java文件等.我实际上没有使用TortoiseHG测试提交或推送相同的大文件.

请帮忙!


建立:

客户端应用程序= MacHG v0.9.7(SCM 1.5.4)和TortoiseHG v1.0.4(SCM 1.5.4)

Server = HTTPS,IIS7.5,Mercurial 1.5.4,Python 2.6.5,使用以下说明进行设置:

http://www.jeremyskinner.co.uk/mercurial-on-iis7/

在IIS7.5中,CGI处理程序配置为处理所有动词(不仅仅是GET,POST和HEAD).

我在服务器上的hgweb.cgi文件如下:

#!/usr/bin/env python
#
# An example hgweb CGI script, edit as necessary

# Path to repo or hgweb config to serve …
Run Code Online (Sandbox Code Playgroud)

mercurial push file iis-7.5 machg

30
推荐指数
2
解决办法
2万
查看次数

标签 统计

file ×1

iis-7.5 ×1

machg ×1

mercurial ×1

push ×1