amend: add noise in extra to avoid creating obsolescence cycle (issue3664)
Obsolescence cycle are bad and should be avoided as much as possible. The
current amend implemented touch changeset meta data as few as possible. This
make is easy for amend to result in the same node than a precursors. We add some
deterministic noise in extra to avoid this. In practice, the hex of the amended
changeset is stored in 'amend_source' extra key.
[ original upstream message ]
--- a/tests/test-keyword.t Tue Oct 16 11:43:15 2012 -0700
+++ b/tests/test-keyword.t Thu Oct 18 22:12:15 2012 +0200
@@ -509,9 +509,9 @@
$ hg --debug commit --amend -d '15 1' -m 'amend without changes' | grep keywords
overwriting a expanding keywords
$ hg -q id
- 577e60613a88
+ 67d8c481a6be
$ head -1 a
- expand $Id: a,v 577e60613a88 1970/01/01 00:00:15 test $
+ expand $Id: a,v 67d8c481a6be 1970/01/01 00:00:15 test $
$ hg -q strip -n tip