我们使用的不止一个HG存储库有反复出现的损坏问题,并且它们总是与隐藏相关(以“.”开头)。文件,如.hgignore和.hgtags。这两个存储库都在Linux用户和Windows用户之间共享。
在使用存储库的过程中,操作可能会因以下消息而突然停止:
hg stat
abort: data/.hgtags.i@fa5433cf149c: no match found!验证产生的结果:
hg verify
repository uses revlog format 1
checking changesets
checking manifests
crosschecking files in changesets and manifests
checking files
data/.hgignore.i@1: missing revlog!
1: empty or missing .hgignore
.hgignore@1: ac9811f0a619 in manifests not found
data/.hgtags.i@17: missing revlog!
17: empty or missing .hgtags
.hgtags@17: fa5433cf149c in manifests not found
1129 files, 18 changesets, 1179 total revisions
6 integrity errors encountered!
(first damaged changeset appears to be 1)在这个代码库中,我只是添加了.hgtags,本地的代码库立即被破坏。我总是可以通过从中央存储库重新克隆来临时修复这个问题,但是这个问题总是一次又一次地出现。
这里发生什么事情?我假设如果我像https://www.mercurial-scm.org/wiki/RepositoryCorruption中建议的那样进行重建/恢复,我可以在没有.hgignore和.hgtags的情况下获得新的repo,但是如果我添加新的版本,我假设它会再次损坏。
发布于 2014-01-28 21:02:32
似乎一些用于删除以"~“开头的文件的清理脚本每隔一段时间就会变成.hg。因为HG较新的"dotencode“特性编码”。作为"~2e",正在删除revlog文件...谜团解开了。
https://stackoverflow.com/questions/21403640
复制相似问题