@@ -708,7 +708,7 @@
the following 1 tags are in conflict: t7
automatic tag merging of .hgtags failed! (use 'hg resolve --tool :merge' or another merge tool of your choice)
2 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ hg resolve -l
U .hgtags
@@ -321,7 +321,7 @@
my t@20a0db6fbf6c+ other t@7af322bc1198 ancestor t@6747d179aa9a
warning: conflicts while merging t! (edit, then use 'hg resolve --mark')
0 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
subrepo t: merge with t:7af322bc1198a32402fe903e0b7ebcfc5c9bf8f4:hg
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
(branch merge, don't forget to commit)
@@ -379,7 +379,7 @@
warning: conflicts while merging a! (edit, then use 'hg resolve --mark')
warning: conflicts while merging b! (edit, then use 'hg resolve --mark')
0 files updated, 0 files merged, 0 files removed, 2 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ hg resolve -m b
@@ -224,7 +224,7 @@
merging hide
warning: conflicts while merging hide! (edit, then use 'hg resolve --mark')
0 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ hg debugsparse
[exclude]
@@ -125,7 +125,7 @@
warning: conflicts while merging backend.sparse! (edit, then use 'hg resolve --mark')
warning: conflicts while merging data.py! (edit, then use 'hg resolve --mark')
0 files updated, 0 files merged, 0 files removed, 2 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ rm *.orig
@@ -34,7 +34,7 @@
$ hg up -qC 2
$ hg merge --tool=internal:fail 1
0 files updated, 0 files merged, 0 files removed, 2 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
resolve -l should contain unresolved entries
@@ -223,7 +223,7 @@
$ hg up -qC 2
$ hg merge --tool=internal:fail 1
0 files updated, 0 files merged, 0 files removed, 2 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
resolve without arguments should suggest --all
@@ -713,7 +713,7 @@
launching merge tool: * ../merge *$TESTTMP/t/t/rev* * * (glob)
merge tool returned: 0
0 files updated, 2 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
--------------
M a
M b
@@ -758,7 +758,7 @@
launching merge tool: * ../merge *$TESTTMP/t/t/rev* * * (glob)
merge tool returned: 0
0 files updated, 2 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
--------------
M b
C a
@@ -134,7 +134,7 @@
merging b/c and a/c to b/c
warning: conflicts while merging b/c! (edit, then use 'hg resolve --mark')
0 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ hg st -A
M b/c
@@ -164,7 +164,7 @@
merging a/c and b/c to b/c
warning: conflicts while merging b/c! (edit, then use 'hg resolve --mark')
2 files updated, 0 files merged, 2 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ hg st -A
M b/a
@@ -53,7 +53,7 @@
moving a/b to a/b~0ed027b96f31
getting a/b/c/d
1 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ hg status
M a/b/c/d
@@ -77,7 +77,7 @@
the local file has been renamed to a/b~2ea68033e3be
resolve manually then use 'hg resolve --mark a/b'
1 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ hg status
M a/b/c/d
@@ -105,7 +105,7 @@
the remote file has been renamed to a/b~0ed027b96f31
resolve manually then use 'hg resolve --mark a/b'
1 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ hg status
A a/b~0ed027b96f31
@@ -128,7 +128,7 @@
the remote file has been renamed to a/b~2ea68033e3be
resolve manually then use 'hg resolve --mark a/b'
1 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ hg mv a/b~2ea68033e3be a/b.old
$ readlink.py a/b.old
@@ -39,7 +39,7 @@
moving a to a~853701544ac3
getting a/b
1 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ hg update --clean .
1 files updated, 0 files merged, 1 files removed, 0 files unresolved
@@ -162,7 +162,7 @@
merging a
warning: conflicts while merging a! (edit, then use 'hg resolve --mark')
0 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
(no more unresolved files)
abort: cannot manage merge changesets
$ rm -r sandbox
@@ -241,7 +241,7 @@
merging a
warning: conflicts while merging a! (edit, then use 'hg resolve --mark')
0 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
(no more unresolved files)
abort: cannot manage merge changesets
$ rm -r sandbox
@@ -30,7 +30,7 @@
merging foo and baz to baz
merging bar failed!
1 files updated, 1 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ hg resolve -l
U bar
@@ -44,7 +44,7 @@
merging baz and foo to baz
merging bar failed!
1 files updated, 1 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
show unresolved
@@ -47,7 +47,7 @@
merging test.txt
warning: conflicts while merging test.txt! (edit, then use 'hg resolve --mark')
0 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
resolve conflict
$ cat >test.txt <<"EOF"
@@ -96,7 +96,7 @@
my test.txt@50c3a7e29886+ other test.txt@40d11a4173a8 ancestor test.txt@96b70246a118
warning: conflicts while merging test.txt! (edit, then use 'hg resolve --mark')
0 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ cat test.txt
@@ -42,7 +42,7 @@
warning: internal :merge cannot merge symlinks for a
warning: conflicts while merging a! (edit, then use 'hg resolve --mark')
0 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ tellmeabout a
@@ -75,7 +75,7 @@
warning: internal :union cannot merge symlinks for a
warning: conflicts while merging a! (edit, then use 'hg resolve --mark')
0 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ tellmeabout a
@@ -98,7 +98,7 @@
warning: internal :merge3 cannot merge symlinks for a
warning: conflicts while merging a! (edit, then use 'hg resolve --mark')
0 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ tellmeabout a
@@ -120,7 +120,7 @@
my a@3574f3e69b1c+ other a@521a1e40188f ancestor a@c334dc3be0da
warning: internal :merge-local cannot merge symlinks for a
0 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ tellmeabout a
@@ -142,7 +142,7 @@
my a@3574f3e69b1c+ other a@521a1e40188f ancestor a@c334dc3be0da
warning: internal :merge-other cannot merge symlinks for a
0 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ tellmeabout a
@@ -211,7 +211,7 @@
warning: internal :merge cannot merge symlinks for f
warning: conflicts while merging f! (edit, then use 'hg resolve --mark')
0 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ tellmeabout f
f is a symlink:
@@ -223,7 +223,7 @@
warning: internal :merge cannot merge symlinks for f
warning: conflicts while merging f! (edit, then use 'hg resolve --mark')
0 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ tellmeabout f
f is a plain file with content:
@@ -250,7 +250,7 @@
warning: internal :merge cannot merge symlinks for f
warning: conflicts while merging f! (edit, then use 'hg resolve --mark')
0 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ tellmeabout f
f is a symlink:
@@ -262,7 +262,7 @@
warning: internal :merge cannot merge symlinks for f
warning: conflicts while merging f! (edit, then use 'hg resolve --mark')
0 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ tellmeabout f
f is a plain file with content:
@@ -354,7 +354,7 @@
warning: conflicts while merging b! (edit, then use 'hg resolve --mark')
warning: conflicts while merging bx! (edit, then use 'hg resolve --mark')
3 files updated, 0 files merged, 0 files removed, 6 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ hg resolve -l
U a
@@ -416,7 +416,7 @@
warning: conflicts while merging b! (edit, then use 'hg resolve --mark')
warning: conflicts while merging bx! (edit, then use 'hg resolve --mark')
3 files updated, 0 files merged, 0 files removed, 6 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ tellmeabout a
a is a plain file with content:
@@ -71,7 +71,7 @@
merging f
warning: conflicts while merging f! (edit, then use 'hg resolve --mark')
0 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ aftermerge
# cat f
@@ -98,7 +98,7 @@
merging f
merging f failed!
0 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ aftermerge
# cat f
@@ -120,7 +120,7 @@
merging f
warning: conflicts while merging f! (edit, then use 'hg resolve --mark')
0 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ rm false
@@ -134,7 +134,7 @@
merging f
warning: conflicts while merging f! (edit, then use 'hg resolve --mark')
0 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ rmdir false
@@ -170,7 +170,7 @@
merging f
merging f failed!
0 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ aftermerge
# cat f
@@ -193,7 +193,7 @@
merging f
merging f failed!
0 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ aftermerge
# cat f
@@ -215,7 +215,7 @@
merging f
merging f failed!
0 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ aftermerge
# cat f
@@ -238,7 +238,7 @@
merging f
merging f failed!
0 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ aftermerge
# cat f
@@ -261,7 +261,7 @@
merging f
merging f failed!
0 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ aftermerge
# cat f
@@ -371,7 +371,7 @@
merging f
merging f failed!
0 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ aftermerge
# cat f
@@ -397,7 +397,7 @@
couldn't find merge tool true (for pattern f)
merging f failed!
0 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ aftermerge
# cat f
@@ -423,7 +423,7 @@
couldn't find merge tool true (for pattern f)
merging f failed!
0 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ aftermerge
# cat f
@@ -449,7 +449,7 @@
merging f
merging f failed!
0 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ aftermerge
# cat f
@@ -471,7 +471,7 @@
# hg update -C 1
$ hg merge -r 2 --config ui.merge=internal:fail
0 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ aftermerge
# cat f
@@ -533,7 +533,7 @@
$ hg merge -r 2 --config ui.merge=internal:prompt
keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved for f? u
0 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ aftermerge
# cat f
@@ -557,7 +557,7 @@
> EOF
keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved for f? u
0 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ aftermerge
# cat f
@@ -579,7 +579,7 @@
$ hg merge -r 2 --config ui.merge=internal:prompt --config ui.interactive=true
keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved for f?
0 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ aftermerge
# cat f
@@ -637,7 +637,7 @@
$ hg merge -r 2 --config ui.merge=internal:dump
merging f
0 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ aftermerge
# cat f
@@ -707,7 +707,7 @@
$ hg merge -r 3 --config ui.merge=internal:forcedump
merging f
0 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ aftermerge
# cat f
@@ -749,7 +749,7 @@
merging f
merging f failed!
0 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ aftermerge
# cat f
@@ -775,7 +775,7 @@
merging f
merging f failed!
0 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ aftermerge
# cat f
@@ -800,7 +800,7 @@
merging f
merging f failed!
0 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ aftermerge
# cat f
@@ -1240,7 +1240,7 @@
was merge successful (yn)? n
merging f failed!
0 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ aftermerge
# cat f
@@ -1265,7 +1265,7 @@
warning: internal :merge cannot merge symlinks for f
warning: conflicts while merging f! (edit, then use 'hg resolve --mark')
0 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
#endif
@@ -106,7 +106,7 @@
use (c)hanged version, leave (d)eleted, or leave (u)nresolved? u
merging foo1 and foo to foo1
0 files updated, 1 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ cat bar
bleh
@@ -43,7 +43,7 @@
$ hg merge
0 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ cat f
@@ -216,7 +216,7 @@
warning: conflicts while merging missing_content2_missing_content4-tracked! (edit, then use 'hg resolve --mark')
warning: conflicts while merging missing_content2_missing_content4-untracked! (edit, then use 'hg resolve --mark')
18 files updated, 3 files merged, 8 files removed, 35 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
Check which files need to be resolved (should correspond to the output above).
This should be the files for which the base (1st filename segment), the remote
@@ -111,7 +111,7 @@
picked tool ':dump' for f2 (binary False symlink False changedelete False)
my f2@6373bbfdae1d+ other f2@e673248094b1 ancestor f2@0f6b37dbe527
3 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ f --dump --recurse *
@@ -158,7 +158,7 @@
getting d1/f3 to d2/f3
merging f2
3 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
Redo merge with merge.preferancestor="*" to enable bid merge
@@ -61,7 +61,7 @@
merging file3
warning: conflicts while merging file3! (edit, then use 'hg resolve --mark')
0 files updated, 0 files merged, 0 files removed, 3 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ status
@@ -128,7 +128,7 @@
merging file3
warning: conflicts while merging file3! (edit, then use 'hg resolve --mark')
0 files updated, 2 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ status
@@ -205,7 +205,7 @@
merging file3
warning: conflicts while merging file3! (edit, then use 'hg resolve --mark')
0 files updated, 1 files merged, 1 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ status
@@ -269,7 +269,7 @@
merging file3
warning: conflicts while merging file3! (edit, then use 'hg resolve --mark')
0 files updated, 0 files merged, 1 files removed, 2 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ status
@@ -422,7 +422,7 @@
$ hg merge --tool :fail
0 files updated, 0 files merged, 0 files removed, 3 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ status 2>&1 | tee $TESTTMP/fail.status
--- status ---
@@ -479,7 +479,7 @@
use (c)hanged version, leave (d)eleted, or leave (u)nresolved?
keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved for file3?
0 files updated, 0 files merged, 0 files removed, 3 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ status 2>&1 | tee $TESTTMP/prompt.status
--- status ---
@@ -538,7 +538,7 @@
use (c)hanged version, leave (d)eleted, or leave (u)nresolved? u
keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved for file3? u
0 files updated, 0 files merged, 0 files removed, 3 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ status
--- status ---
@@ -596,7 +596,7 @@
merging file3
warning: conflicts while merging file3! (edit, then use 'hg resolve --mark')
0 files updated, 0 files merged, 0 files removed, 3 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ status
--- status ---
@@ -1584,7 +1584,7 @@
merging foo
warning: conflicts while merging foo! (edit, then use 'hg resolve --mark')
0 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ echo 'merge 1' > foo
$ hg resolve -m foo
@@ -1595,7 +1595,7 @@
merging foo
warning: conflicts while merging foo! (edit, then use 'hg resolve --mark')
1 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ echo 'merge 2' > foo
$ hg resolve -m foo
@@ -131,7 +131,7 @@
warning: stuff/maybelarge.dat looks like a binary file.
warning: conflicts while merging stuff/maybelarge.dat! (edit, then use 'hg resolve --mark')
0 files updated, 1 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ hg cat -r . sub/maybelarge.dat > stuff/maybelarge.dat
$ hg resolve -m stuff/maybelarge.dat
@@ -138,7 +138,7 @@
getting changed largefiles
1 largefiles updated, 0 removed
0 files updated, 1 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ hg status -A large1
M large1
@@ -1138,7 +1138,7 @@
merging m
warning: conflicts while merging m! (edit, then use 'hg resolve --mark')
0 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ cat m
$Id$
@@ -199,7 +199,7 @@
merging b2
warning: conflicts while merging b2! (edit, then use 'hg resolve --mark')
* files updated, 0 files merged, 1 files removed, 1 files unresolved (glob)
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ fileset 'resolved()'
$ fileset 'unresolved()'
@@ -384,7 +384,7 @@
merging b
warning: conflicts while merging b! (edit, then use 'hg resolve --mark')
2 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ hg --cwd b revert -r 2 b
$ hg --cwd b resolve -m b
@@ -38,7 +38,7 @@
merging a
warning: conflicts while merging a! (edit, then use 'hg resolve --mark')
0 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ hg id
@@ -91,7 +91,7 @@
merging a
warning: conflicts while merging a! (edit, then use 'hg resolve --mark')
0 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ cat a
@@ -182,7 +182,7 @@
merging a
warning: conflicts while merging a! (edit, then use 'hg resolve --mark')
0 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ cat a
@@ -207,7 +207,7 @@
merging a
warning: conflicts while merging a! (edit, then use 'hg resolve --mark')
0 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ cat a
Small Mathematical Series.
@@ -254,7 +254,7 @@
merging a
warning: conflicts while merging a! (edit, then use 'hg resolve --mark')
1 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ hg resolve --tool :merge-other a
merging a
@@ -228,7 +228,7 @@
forget: include, exclude
init: ssh, remotecmd, insecure
log: follow, follow-first, date, copies, keyword, rev, line-range, removed, only-merges, user, only-branch, branch, prune, patch, git, limit, no-merges, stat, graph, style, template, include, exclude
- merge: force, rev, preview, tool
+ merge: force, rev, preview, abort, tool
pull: update, force, rev, bookmark, branch, ssh, remotecmd, insecure
push: force, rev, bookmark, branch, new-branch, pushvars, ssh, remotecmd, insecure
remove: after, force, subrepos, include, exclude
@@ -21,13 +21,63 @@
$ commit "D" 3
created new head
+State before the merge
+
+ $ hg status
+ $ hg id
+ e45016d2b3d3 tip
+ $ hg summary
+ parent: 3:e45016d2b3d3 tip
+ D
+ branch: default
+ commit: (clean)
+ update: 2 new changesets, 2 branch heads (merge)
+ phases: 4 draft
+
+Testing the abort functionality first in case of conflicts
+
+ $ hg merge --abort
+ abort: no merge in progress
+ [255]
+ $ hg merge
+ merging A
+ warning: conflicts while merging A! (edit, then use 'hg resolve --mark')
+ 1 files updated, 0 files merged, 0 files removed, 1 files unresolved
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
+ [1]
+
+ $ hg merge --abort e4501
+ abort: cannot specify a node with --abort
+ [255]
+ $ hg merge --abort --rev e4501
+ abort: cannot specify both --rev and --abort
+ [255]
+
+ $ hg merge --abort
+ aborting the merge, updating back to e45016d2b3d3
+ 1 files updated, 0 files merged, 1 files removed, 0 files unresolved
+
+Checking that we got back in the same state
+
+ $ hg status
+ ? A.orig
+ $ hg id
+ e45016d2b3d3 tip
+ $ hg summary
+ parent: 3:e45016d2b3d3 tip
+ D
+ branch: default
+ commit: 1 unknown (clean)
+ update: 2 new changesets, 2 branch heads (merge)
+ phases: 4 draft
+
Merging a conflict araises
$ hg merge
merging A
warning: conflicts while merging A! (edit, then use 'hg resolve --mark')
1 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
Correct the conflict without marking the file as resolved
@@ -52,7 +102,7 @@
merging A
warning: conflicts while merging A! (edit, then use 'hg resolve --mark')
1 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ hg rm --force A
$ hg commit -m merged
@@ -64,4 +114,28 @@
$ hg commit -m merged
created new head
+Testing the abort functionality in case of no conflicts
+
+ $ hg update -C 0
+ 1 files updated, 0 files merged, 1 files removed, 0 files unresolved
+ $ addcommit "E" 4
+ created new head
+ $ hg id
+ 68352a18a7c4 tip
+
+ $ hg merge -r 4
+ 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
+ (branch merge, don't forget to commit)
+
+ $ hg merge --preview --abort
+ abort: cannot specify --preview with --abort
+ [255]
+
+ $ hg merge --abort
+ aborting the merge, updating back to 68352a18a7c4
+ 1 files updated, 0 files merged, 1 files removed, 0 files unresolved
+
+ $ hg id
+ 68352a18a7c4 tip
+
$ cd ..
@@ -104,7 +104,7 @@
merging a
warning: conflicts while merging a! (edit, then use 'hg resolve --mark')
0 files updated, 0 files merged, 0 files removed, 1 files unresolved
- use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
+ use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
[1]
$ hg st
M a
@@ -14,7 +14,10 @@
import shutil
from .i18n import _
-from .node import nullid
+from .node import (
+ hex,
+ nullid,
+)
from . import (
bookmarks,
@@ -847,16 +850,32 @@
return ret
-def merge(repo, node, force=None, remind=True, mergeforce=False, labels=None):
+def merge(repo, node, force=None, remind=True, mergeforce=False, labels=None,
+ abort=False):
"""Branch merge with node, resolving changes. Return true if any
unresolved conflicts."""
- stats = mergemod.update(repo, node, True, force, mergeforce=mergeforce,
- labels=labels)
+ if not abort:
+ stats = mergemod.update(repo, node, True, force, mergeforce=mergeforce,
+ labels=labels)
+ else:
+ ms = mergemod.mergestate.read(repo)
+ if ms.active():
+ # there were conflicts
+ node = hex(ms._local)
+ else:
+ # there were no conficts, mergestate was not stored
+ node = repo['.'].hex()
+
+ repo.ui.status(_("aborting the merge, updating back to"
+ " %s\n") % node[:12])
+ stats = mergemod.update(repo, node, branchmerge=False, force=True,
+ labels=labels)
+
_showstats(repo, stats)
if stats[3]:
repo.ui.status(_("use 'hg resolve' to retry unresolved file merges "
- "or 'hg update -C .' to abandon\n"))
- elif remind:
+ "or 'hg merge --abort' to abandon\n"))
+ elif remind and not abort:
repo.ui.status(_("(branch merge, don't forget to commit)\n"))
return stats[3] > 0
@@ -3534,7 +3534,8 @@
_('force a merge including outstanding changes (DEPRECATED)')),
('r', 'rev', '', _('revision to merge'), _('REV')),
('P', 'preview', None,
- _('review revisions to merge (no merge is performed)'))
+ _('review revisions to merge (no merge is performed)')),
+ ('', 'abort', None, _('abort the ongoing merge')),
] + mergetoolopts,
_('[-P] [[-r] REV]'))
def merge(ui, repo, node=None, **opts):
@@ -3559,23 +3560,33 @@
See :hg:`help resolve` for information on handling file conflicts.
- To undo an uncommitted merge, use :hg:`update --clean .` which
+ To undo an uncommitted merge, use :hg:`merge --abort .` which
will check out a clean copy of the original merge parent, losing
all changes.
Returns 0 on success, 1 if there are unresolved files.
"""
opts = pycompat.byteskwargs(opts)
+ abort = opts.get('abort')
+ if abort and repo.dirstate.p2() == nullid:
+ cmdutil.wrongtooltocontinue(repo, _('merge'))
+ if abort:
+ if node:
+ raise error.Abort(_("cannot specify a node with --abort"))
+ if opts.get('rev'):
+ raise error.Abort(_("cannot specify both --rev and --abort"))
+ if opts.get('preview'):
+ raise error.Abort(_("cannot specify --preview with --abort"))
if opts.get('rev') and node:
raise error.Abort(_("please specify just one revision"))
if not node:
node = opts.get('rev')
if node:
node = scmutil.revsingle(repo, node).node()
- if not node:
+ if not node and not abort:
node = repo[destutil.destmerge(repo)].node()
if opts.get('preview'):
@@ -3596,7 +3607,7 @@
force = opts.get('force')
labels = ['working copy', 'merge rev']
return hg.merge(repo, node, force=force, mergeforce=force,
- labels=labels)
+ labels=labels, abort=abort)
finally:
ui.setconfig('ui', 'forcemerge', '', 'merge')