add dirstate debugging commands
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
add dirstate debugging commands
As I've played with various different merges and more recently
rawcommit, I've found the following patch to be very very helpful in
figuring out whether the dirstate is being left in a consistent or
inconsistent state with respect to the current manifest.
I attempted to deduce the invariants that were assumed by the current
code, and then check it in this code.
I may or may not have captured the design intent in this check; if not,
I'd be very happy to hear more clearly what was intended, so that I can
write tests to that expectation.
Anyway, here's the patch. Not sure if it's a good idea to commit it to
the mainline, or just leave it as a debugging aid. I attempted to
package it so that it doesn't interfere with normal usage.
Michael Fetterman
(tweaked by mpm: remove -d magic)
manifest hash: 869f5b5f954dc0f46ba27322359e811d5e21d71c
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)
iD8DBQFCvP77ywK+sNU5EO8RArmtAKCCVuI2slANzWZ26P5edtH/ixdwNwCfZLWl
5P+V+C92II3usO4YW2MULKY=
=/Pv4
-----END PGP SIGNATURE-----
+ hg init
+ echo a
+ hg add a
+ hg commit -t test -u test -d '0 0'
+ hg history
changeset: 0:acb14030fe0a21b60322c440ad2d20cf7685a376
tag: tip
user: test
date: Thu Jan 1 00:00:00 1970
summary: test
+ hg tag -u test -d '0 0' bleah
+ hg history
changeset: 1:863197ef03781c4fc00276d83eb66c4cb9cd91df
tag: tip
user: test
date: Thu Jan 1 00:00:00 1970
summary: Added tag bleah for changeset acb14030fe0a21b60322c440ad2d20cf7685a376
changeset: 0:acb14030fe0a21b60322c440ad2d20cf7685a376
tag: bleah
user: test
date: Thu Jan 1 00:00:00 1970
summary: test
+ echo foo
+ hg tag -u test -d '0 0' bleah2
abort: working copy of .hgtags is changed!
(please commit .hgtags manually)
+ echo failed
failed