Quoting Petr from http://bugs.darcs.net/issue1903:
=====
That's indeed interesting... if I remove a file from pristine.hashed
manually and then darcs check, it indeed complains...
Ok, I see: check is only consulting the pristine hashes, not the file
contents themselves. So even though it can't look into the hashed file
that's missing, it has its hash and concludes it's the right file (since
the hash matches).
It may be worth making the checking stricter (i.e. apart from checking
that hashes are OK, also check for each pristine file, that the hash
corresponds to the content of the file...).
=====
One way to reproduce that bug would be to "darcs get" a repos that has
some files unreadable because of bad permissions.
What happened in my case was that a repo printed an error during a
"darcs get" (couldn't fetch), but then "darcs check" would not complain
(repo is consistent), and then doing obliterate would trigger a
mysterious Zlib error.
|