1

我最近尝试推送到中央存储库并收到错误:发现已放弃的事务。运行 hg recover 表示没有丢失事务。根据另一个答案的建议,我使用 hg verify 来查看我的存储库缺少两个 revlog;下面是运行 hg verify 的结果:

% hg --repository C:\dev\WHDLawWeb verify --verbose
repository uses revlog format 1
checking changesets
checking manifests
crosschecking files in changesets and manifests
checking files
 data/WHDLawWeb/Images/pastsponsorships.jpg.d@167: missing revlog!
 data/WHDLawWeb/WHDLawWeb/Resources/Image/ALFALogoWhite.jpg.i@319: missing revlog!          
7175 files, 988 changesets, 14987 total revisions           
2 integrity errors encountered!        
(first damaged changeset appears to be 167)       
[command returned code 1 Tue Jul 03 15:02:13 2012]

为了纠正这个问题,主要是由于我在这一点上的挫败感,我决定只克隆中央存储库,因为我只会丢失一些修订。但是,一旦我尝试从这个克隆的存储库推送,我会收到以下错误报告:

** Mercurial version (2.2.2).  TortoiseHg version (2.4.1)   
** Command: --nofork workbench  
** CWD: C:\dev  
** Encoding: cp1252    
** Extensions loaded: bugzilla, graphlog, convert, extdiff  
** Python version: 2.6.6 (r266:84297, Aug 24 2010, 18:46:32) [MSC v.1500 32 bit (Intel)]  
** Windows version: (6, 1, 7601, 2, 'Service Pack 1')  
** Processor architecture: x86  
** Qt-4.7.4 PyQt-4.8.6  
Traceback (most recent call last):  
  File "tortoisehg\hgqt\repowidget.pyo", line 954, in repositoryChanged  
  File "tortoisehg\hgqt\repowidget.pyo", line 916, in rebuildGraph  
  File "tortoisehg\hgqt\repowidget.pyo", line 777, in setupModels  
  File "tortoisehg\hgqt\repomodel.pyo", line 151, in __init__  
  File "tortoisehg\hgqt\repomodel.pyo", line 170, in initBranchColors  
  File "mercurial\localrepo.pyo", line 523, in branchtags  
  File "mercurial\changelog.pyo", line 195, in read  
  File "mercurial\revlog.pyo", line 926, in revision  
  File "mercurial\revlog.pyo", line 849, in _chunkbase  
  File "mercurial\revlog.pyo", line 846, in _chunk  
  File "mercurial\revlog.pyo", line 115, in decompress  
error: Error -5 while decompressing data: incomplete or truncated stream  
Traceback (most recent call last):  
  File "tortoisehg\hgqt\commit.pyo", line 533, in repositoryChanged  
  File "tortoisehg\hgqt\commit.pyo", line 553, in refresh  
  File "tortoisehg\hgqt\thgrepo.pyo", line 631, in thgmqappliedpatch  
  File "tortoisehg\hgqt\thgrepo.pyo", line 623, in _thgmqpatchtags  
  File "mercurial\context.pyo", line 191, in tags  
  File "mercurial\localrepo.pyo", line 468, in nodetags  
  File "mercurial\util.pyo", line 237, in __get__  
  File "mercurial\localrepo.pyo", line 395, in _tagscache  
  File "mercurial\localrepo.pyo", line 428, in _findtags  
  File "mercurial\tags.pyo", line 30, in findglobaltags  
  File "mercurial\tags.pyo", line 242, in _readtagcache  
  File "mercurial\context.pyo", line 251, in filenode  
  File "mercurial\context.pyo", line 240, in _fileinfo  
  File "mercurial\context.pyo", line 183, in files  
  File "mercurial\util.pyo", line 237, in __get__  
  File "mercurial\context.pyo", line 134, in _changeset  
  File "mercurial\changelog.pyo", line 195, in read  
  File "mercurial\revlog.pyo", line 926, in revision  
  File "mercurial\revlog.pyo", line 849, in _chunkbase  
  File "mercurial\revlog.pyo", line 846, in _chunk  
  File "mercurial\revlog.pyo", line 115, in decompress  
error: Error -5 while decompressing data: incomplete or truncated stream

在中央存储库上运行 hg verify 表明这里也缺少两个 revlog。如果有人知道如何修复我的原始或克隆存储库,我将不胜感激。

在这里也尝试了一个解决方案,遇到了同样的问题。我对 mercurial 和 tortiosehg 比较陌生,请原谅任何愚蠢的错误。就像我说的帮助将不胜感激。

4

0 回答 0