我们使用的多个HG存储库存在反复出现的腐败问题,并且它们始终与隐藏文件(以“。”开头)相关,如.hgignore和.hgtags。 这些存储库在Linux用户和Windows用户之间共享(如果有的话)。水银存储库被隐藏文件损坏,如.hgignore和.hgtags
hg stat
abort: data/[email protected]: no match found!
验证收率:
hg verify
repository uses revlog format 1
checking changesets
checking manifests
crosschecking files in changesets and manifests
checking files
data/[email protected]: missing revlog!
1: empty or missing .hgignore
[email protected]: ac9811f0a619 in manifests not found
data/[email protected]: missing revlog!
17: empty or missing .hgtags
[email protected]: 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的新回购版,但是如果我添加新版本,我认为它会再次损坏。
由于Linux用户的另一个回购仅仅是被破坏了,所以windows/linux注释变得无关紧要。 – Eskil
绝不要手动添加.hgtags(除非你确切地知道,该怎么办以及如何操作) - 使用Mercurial命令并让Mercurial更改文件内的文件 –