Skip to main content
 首页 » 编程设计

python之Mercurial 克隆每次都以 99.x% 的速度从多个来源失败

2025年05月04日8落叶

当我尝试克隆 Mercurial 存储库时遇到中断错误。我已经从几个不同的来源进行了尝试,以确保这不是存储库的问题。

我在具有管理员权限的 Windows 7(64 位)机器上从 cygwin 运行。

例如。命令:
hg clone --debug https://www.mercurial-scm.org/repo/hg mercurial-repo

当我尝试通过乌龟 GUI 克隆时出现类似的问题...

感谢任何想法!

更新:感谢蒂姆的评论,完全退出我的反病毒软件(不仅仅是试图禁用)解决了这个问题。

我得到的错误:

** unknown exception encountered, please report by visiting 
** http://mercurial.selenic.com/wiki/BugTracker 
** Python 2.7.3 (default, Dec 18 2012, 13:50:09) [GCC 4.5.3] 
** Mercurial Distributed SCM (version 2.5.2) 
** Extensions loaded: 
Traceback (most recent call last): 
  File "/usr/bin/hg", line 38, in <module> 
    mercurial.dispatch.run() 
  File "/usr/lib/python2.7/site-packages/mercurial/dispatch.py", line 28, in run 
    sys.exit((dispatch(request(sys.argv[1:])) or 0) & 255) 
  File "/usr/lib/python2.7/site-packages/mercurial/dispatch.py", line 65, in dispatch 
    return _runcatch(req) 
  File "/usr/lib/python2.7/site-packages/mercurial/dispatch.py", line 88, in _runcatch 
    return _dispatch(req) 
  File "/usr/lib/python2.7/site-packages/mercurial/dispatch.py", line 743, in _dispatch 
    cmdpats, cmdoptions) 
  File "/usr/lib/python2.7/site-packages/mercurial/dispatch.py", line 514, in runcommand 
    ret = _runcommand(ui, options, cmd, d) 
  File "/usr/lib/python2.7/site-packages/mercurial/dispatch.py", line 833, in _runcommand 
    return checkargs() 
  File "/usr/lib/python2.7/site-packages/mercurial/dispatch.py", line 804, in checkargs 
    return cmdfunc() 
  File "/usr/lib/python2.7/site-packages/mercurial/dispatch.py", line 740, in <lambda> 
    d = lambda: util.checksignature(func)(ui, *args, **cmdoptions) 
  File "/usr/lib/python2.7/site-packages/mercurial/util.py", line 475, in check 
    return func(*args, **kwargs) 
  File "/usr/lib/python2.7/site-packages/mercurial/commands.py", line 1234, in clone 
    branch=opts.get('branch')) 
  File "/usr/lib/python2.7/site-packages/mercurial/hg.py", line 371, in clone 
    destpeer.local().clone(srcpeer, heads=revs, stream=stream) 
  File "/usr/lib/python2.7/site-packages/mercurial/localrepo.py", line 2540, in clone 
    return self.stream_in(remote, set(('revlogv1',))) 
  File "/usr/lib/python2.7/site-packages/mercurial/localrepo.py", line 2473, in stream_in 
    for chunk in util.filechunkiter(fp, limit=size): 
  File "/usr/lib/python2.7/site-packages/mercurial/util.py", line 941, in filechunkiter 
    s = nbytes and f.read(nbytes) 
  File "/usr/lib/python2.7/site-packages/mercurial/keepalive.py", line 422, in read 
    s = self._rbuf + self._raw_read(amt) 
  File "/usr/lib/python2.7/httplib.py", line 541, in read 
    return self._read_chunked(amt) 
  File "/usr/lib/python2.7/site-packages/mercurial/keepalive.py", line 451, in _read_chunked 
    value += self._safe_read(amt) 
  File "/usr/lib/python2.7/httplib.py", line 649, in _safe_read 
    raise IncompleteRead(''.join(s), amt) 
httplib.IncompleteRead: IncompleteRead(11129 bytes read, 54407 more expected) 

请您参考如下方法:

请注意,@tim-pietzcker 在第二条评论中发布了答案,@Shane 表示这有效 - 我只是将其添加为答案,这样问题就不再显示为“未回答”。