##// END OF EJS Templates
mq: use dirstateguard instead of dirstate.invalidate (qpush)...
mq: use dirstateguard instead of dirstate.invalidate (qpush) Before this patch, "mq.queue.apply()" uses "dirstate.invalidate()" as a kind of "restore .hg/dirstate to the original status" during afailure. But it just discards changes in memory, and doesn't actually restore ".hg/dirstate". Then, it can't work as expected, if "dirstate.write()" is executed while processing. This patch uses "dirstateguard" instead of "dirstate.invalidate()" to restore ".hg/dirstate" at failure even if "dirstate.write()" is executed before failure. This is a part of preparations to fix the issue that the recent (in memory) dirstate isn't visible to external processes (e.g. "precommit" hook).

File last commit:

r23929:a43fdf33 stable
r24996:58308dde default
Show More
test-issue1175.t
96 lines | 2.1 KiB | text/troff | Tads3Lexer
Matt Mackall
tests: fix a bunch of pointless #s in unified tests
r12328 http://mercurial.selenic.com/bts/issue1175
Adrian Buehlmann
tests: unify test-issue*
r12195
$ hg init
$ touch a
$ hg ci -Am0
adding a
$ hg mv a a1
$ hg ci -m1
$ hg co 0
1 files updated, 0 files merged, 1 files removed, 0 files unresolved
$ hg mv a a2
$ hg up
Dan Villiom Podlaski Christiansen
merge: make 'diverging renames' diagnostic a more helpful note....
r12757 note: possible conflict - a was renamed multiple times to:
Adrian Buehlmann
tests: unify test-issue*
r12195 a2
a1
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ hg ci -m2
$ touch a
$ hg ci -Am3
adding a
$ hg mv a b
$ hg ci -Am4 a
$ hg ci --debug --traceback -Am5 b
Mads Kiilerich
localrepo: show headline notes in commitctx before showing filenames...
r23749 committing files:
Adrian Buehlmann
tests: unify test-issue*
r12195 b
Ryan McElroy
commit: remove reverse search for copy source when not in parent (issue4476)...
r23929 warning: can't find ancestor for 'b' copied from 'a'!
Mads Kiilerich
localrepo: show headline notes in commitctx before showing filenames...
r23749 committing manifest
committing changelog
Ryan McElroy
commit: remove reverse search for copy source when not in parent (issue4476)...
r23929 committed changeset 5:83a687e8a97c80992ba385bbfd766be181bfb1d1
Adrian Buehlmann
tests: unify test-issue*
r12195
$ hg verify
checking changesets
checking manifests
crosschecking files in changesets and manifests
checking files
4 files, 6 changesets, 4 total revisions
$ hg export --git tip
# HG changeset patch
# User test
# Date 0 0
Mads Kiilerich
export: show 'Date' header in a format that also is readable for humans...
r18648 # Thu Jan 01 00:00:00 1970 +0000
Ryan McElroy
commit: remove reverse search for copy source when not in parent (issue4476)...
r23929 # Node ID 83a687e8a97c80992ba385bbfd766be181bfb1d1
Matt Mackall
setparents: drop copies from dropped p2 (issue3843)
r18739 # Parent 1d1625283f71954f21d14c3d44d0ad3c019c597f
Adrian Buehlmann
tests: unify test-issue*
r12195 5
diff --git a/b b/b
new file mode 100644
Ryan McElroy
commit: remove reverse search for copy source when not in parent (issue4476)...
r23929 http://bz.selenic.com/show_bug.cgi?id=4476
$ hg init foo
$ cd foo
$ touch a && hg ci -Aqm a
$ hg mv a b
$ echo b1 >> b
$ hg ci -Aqm b1
$ hg up 0
1 files updated, 0 files merged, 1 files removed, 0 files unresolved
$ hg mv a b
$ echo b2 >> b
$ hg ci -Aqm b2
$ hg graft 1
grafting 1:5974126fad84 "b1"
merging b
warning: conflicts during merge.
merging b incomplete! (edit conflicts, then use 'hg resolve --mark')
abort: unresolved conflicts, can't continue
(use hg resolve and hg graft --continue)
[255]
$ echo a > b
$ echo b3 >> b
$ hg resolve --mark b
(no more unresolved files)
$ hg graft --continue
grafting 1:5974126fad84 "b1"
warning: can't find ancestor for 'b' copied from 'a'!
$ hg log -f b -T 'changeset: {rev}:{node|short}\nsummary: {desc}\n\n'
changeset: 3:376d30ccffc0
summary: b1
changeset: 2:416baaa2e5e4
summary: b2
changeset: 0:3903775176ed
summary: a