merge: delay debug messages for merge actions

Show messages at a point where the actions have been sorted, thus preparing for
backout of 14f4258e3526.

This makes manifestmerge more of a silent operation, just like 'copies' is.

Indent 'preserving' messages to make them subordinate to the action logging so
they fit in the new context. (The 'preserving' messages are quite redundant and
could also be removed completely.)
This commit is contained in:
Mads Kiilerich 2013-01-24 23:57:44 +01:00
parent 3da557a087
commit ee476759ff
13 changed files with 89 additions and 89 deletions

View File

@ -368,7 +368,7 @@ def overridemanifestmerge(origfn, repo, p1, p2, pa, overwrite, partial):
if overwrite:
processed.append(action)
continue
f, m, args = action
f, m, args, msg = action
choices = (_('&Largefile'), _('&Normal file'))
if m == "g" and lfutil.splitstandin(f) in p1 and f in p2:
@ -379,10 +379,10 @@ def overridemanifestmerge(origfn, repo, p1, p2, pa, overwrite, partial):
msg = _('%s has been turned into a largefile\n'
'use (l)argefile or keep as (n)ormal file?') % lfile
if repo.ui.promptchoice(msg, choices, 0) == 0:
processed.append((lfile, "r", None))
processed.append((standin, "g", (p2.flags(standin),)))
processed.append((lfile, "r", None, msg))
processed.append((standin, "g", (p2.flags(standin),), msg))
else:
processed.append((standin, "r", None))
processed.append((standin, "r", None, msg))
elif m == "g" and lfutil.standin(f) in p1 and f in p2:
# Case 2: largefile in the working copy, normal file in
# the second parent
@ -391,10 +391,10 @@ def overridemanifestmerge(origfn, repo, p1, p2, pa, overwrite, partial):
msg = _('%s has been turned into a normal file\n'
'keep as (l)argefile or use (n)ormal file?') % lfile
if repo.ui.promptchoice(msg, choices, 0) == 0:
processed.append((lfile, "r", None))
processed.append((lfile, "r", None, msg))
else:
processed.append((standin, "r", None))
processed.append((lfile, "g", (p2.flags(lfile),)))
processed.append((standin, "r", None, msg))
processed.append((lfile, "g", (p2.flags(lfile),), msg))
else:
processed.append(action)

View File

@ -176,12 +176,12 @@ def _forgetremoved(wctx, mctx, branchmerge):
state = branchmerge and 'r' or 'f'
for f in wctx.deleted():
if f not in mctx:
actions.append((f, state, None))
actions.append((f, state, None, "forget deleted"))
if not branchmerge:
for f in wctx.removed():
if f not in mctx:
actions.append((f, "f", None))
actions.append((f, "f", None, "forget removed"))
return actions
@ -194,8 +194,7 @@ def manifestmerge(repo, p1, p2, pa, overwrite, partial):
"""
def act(msg, m, f, *args):
repo.ui.debug(" %s: %s -> %s\n" % (f, msg, m))
actions.append((f, m, args))
actions.append((f, m, args, msg))
actions, copy, movewithdir = [], {}, {}
@ -342,12 +341,13 @@ def applyupdates(repo, actions, wctx, mctx, actx, overwrite):
# prescan for merges
for a in actions:
f, m, args = a
f, m, args, msg = a
repo.ui.debug(" %s: %s -> %s\n" % (f, msg, m))
if m == "m": # merge
f2, fd, move = args
if fd == '.hgsubstate': # merged internally
continue
repo.ui.debug("preserving %s for resolve of %s\n" % (f, fd))
repo.ui.debug(" preserving %s for resolve of %s\n" % (f, fd))
fcl = wctx[f]
fco = mctx[f2]
if mctx == actx: # backwards, use working dir parent as ancestor
@ -374,7 +374,7 @@ def applyupdates(repo, actions, wctx, mctx, actx, overwrite):
numupdates = len(actions)
for i, a in enumerate(actions):
f, m, args = a
f, m, args, msg = a
repo.ui.progress(_('updating'), i + 1, item=f, total=numupdates,
unit=_('files'))
if m == "r": # remove
@ -468,7 +468,7 @@ def recordupdates(repo, actions, branchmerge):
"record merge actions to the dirstate"
for a in actions:
f, m, args = a
f, m, args, msg = a
if m == "r": # remove
if branchmerge:
repo.dirstate.remove(f)

View File

@ -32,9 +32,9 @@
overwrite: False, partial: False
ancestor: b8bf91eeebbc, local: add3f11052fa+, remote: 17c05bb7fcb6
a: remote moved to b -> m
preserving a for resolve of b
a: remote moved to c -> m
preserving a for resolve of b
preserving a for resolve of c
preserving a for resolve of c
removing a
updating: a 1/2 files (50.00%)
picked tool 'internal:merge' for b (binary False symlink False)

View File

@ -35,10 +35,10 @@ we get conflicts that shouldn't be there
resolving manifests
overwrite: False, partial: False
ancestor: e6dc8efe11cc, local: 6a0df1dad128+, remote: 484bf6903104
foo: versions differ -> m
foo: remote copied to bar -> m
preserving foo for resolve of bar
preserving foo for resolve of foo
preserving foo for resolve of bar
foo: versions differ -> m
preserving foo for resolve of foo
updating: foo 1/2 files (50.00%)
picked tool 'internal:merge' for bar (binary False symlink False)
merging foo and bar to bar

View File

@ -137,7 +137,7 @@ Graft out of order, skipping a merge and a duplicate
overwrite: False, partial: False
ancestor: 68795b066622, local: ef0ef43d49e7+, remote: 5d205f8b35b6
b: local copied/moved to a -> m
preserving b for resolve of b
preserving b for resolve of b
updating: b 1/1 files (100.00%)
picked tool 'internal:merge' for b (binary False symlink False)
merging b and a to b
@ -160,7 +160,7 @@ Graft out of order, skipping a merge and a duplicate
ancestor: 4c60f11aa304, local: 1905859650ec+, remote: 9c233e8e184d
d: remote is newer -> g
e: versions differ -> m
preserving e for resolve of e
preserving e for resolve of e
updating: d 1/2 files (50.00%)
getting d
updating: e 2/2 files (100.00%)

View File

@ -66,7 +66,7 @@ http://mercurial.selenic.com/bts/issue672
overwrite: False, partial: False
ancestor: c64f439569a9, local: e327dca35ac8+, remote: 746e9549ea96
1a: local copied/moved to 1 -> m
preserving 1a for resolve of 1a
preserving 1a for resolve of 1a
updating: 1a 1/1 files (100.00%)
picked tool 'internal:merge' for 1a (binary False symlink False)
merging 1a and 1 to 1a
@ -89,7 +89,7 @@ http://mercurial.selenic.com/bts/issue672
overwrite: False, partial: False
ancestor: c64f439569a9, local: 746e9549ea96+, remote: e327dca35ac8
1: remote moved to 1a -> m
preserving 1 for resolve of 1a
preserving 1 for resolve of 1a
removing 1
updating: 1 1/1 files (100.00%)
picked tool 'internal:merge' for 1a (binary False symlink False)

View File

@ -72,7 +72,7 @@ This should use bar@rev2 as the ancestor:
overwrite: False, partial: False
ancestor: 0f2ff26688b9, local: 2263c1be0967+, remote: 0555950ead28
bar: versions differ -> m
preserving bar for resolve of bar
preserving bar for resolve of bar
updating: bar 1/1 files (100.00%)
picked tool 'internal:merge' for bar (binary False symlink False)
merging bar
@ -159,7 +159,7 @@ This should use bar@rev2 as the ancestor:
overwrite: False, partial: False
ancestor: 0f2ff26688b9, local: 2263c1be0967+, remote: 3ffa6b9e35f0
bar: versions differ -> m
preserving bar for resolve of bar
preserving bar for resolve of bar
updating: bar 1/1 files (100.00%)
picked tool 'internal:merge' for bar (binary False symlink False)
merging bar

View File

@ -35,7 +35,7 @@ Symlink is local parent, executable is other:
overwrite: False, partial: False
ancestor: c334dc3be0da, local: 521a1e40188f+, remote: 3574f3e69b1c
a: versions differ -> m
preserving a for resolve of a
preserving a for resolve of a
updating: a 1/1 files (100.00%)
picked tool 'internal:merge' for a (binary False symlink True)
merging a
@ -68,7 +68,7 @@ Symlink is other parent, executable is local:
overwrite: False, partial: False
ancestor: c334dc3be0da, local: 3574f3e69b1c+, remote: 521a1e40188f
a: versions differ -> m
preserving a for resolve of a
preserving a for resolve of a
updating: a 1/1 files (100.00%)
picked tool 'internal:merge' for a (binary False symlink True)
merging a
@ -102,7 +102,7 @@ Update to link with local change should cause a merge prompt (issue3200):
overwrite: False, partial: False
ancestor: c334dc3be0da, local: c334dc3be0da+, remote: 521a1e40188f
a: versions differ -> m
preserving a for resolve of a
preserving a for resolve of a
updating: a 1/1 files (100.00%)
(couldn't find merge tool hgmerge|tool hgmerge can't handle symlinks) (re)
picked tool 'internal:prompt' for a (binary False symlink True)

View File

@ -84,7 +84,7 @@ pull and merge from test-a again
overwrite: False, partial: False
ancestor: 96b70246a118, local: 50c3a7e29886+, remote: 40d11a4173a8
test.txt: versions differ -> m
preserving test.txt for resolve of test.txt
preserving test.txt for resolve of test.txt
updating: test.txt 1/1 files (100.00%)
picked tool 'internal:merge' for test.txt (binary False symlink False)
merging test.txt

View File

@ -33,13 +33,13 @@
src: 'a2' -> dst: 'b2' !
src: 'a2' -> dst: 'c2' !
checking for directory renames
a2: divergent renames -> dr
resolving manifests
overwrite: False, partial: False
ancestor: af1939970a1c, local: 044f8520aeeb+, remote: 85c198ef2f6c
a: remote moved to b -> m
preserving a for resolve of b
a2: divergent renames -> dr
b2: remote created -> g
preserving a for resolve of b
removing a
updating: a 1/3 files (33.33%)
picked tool 'internal:merge' for b (binary False symlink False)
@ -178,10 +178,10 @@ Check for issue3074
all copies found (* = to merge, ! = divergent, % = renamed and deleted):
src: 'file' -> dst: 'newfile' %
checking for directory renames
file: rename and delete -> rd
resolving manifests
overwrite: False, partial: False
ancestor: 19d7f95df299, local: 0084274f6b67+, remote: 5d32493049f0
file: rename and delete -> rd
newfile: remote created -> g
updating: file 1/2 files (50.00%)
note: possible conflict - file was deleted and renamed to:

View File

@ -86,10 +86,10 @@ $4 = expected result
resolving manifests
overwrite: False, partial: False
ancestor: 924404dff337, local: e300d1c794ec+, remote: 4ce40f5aca24
rev: versions differ -> m
a: remote copied to b -> m
preserving a for resolve of b
preserving rev for resolve of rev
preserving a for resolve of b
rev: versions differ -> m
preserving rev for resolve of rev
updating: a 1/2 files (50.00%)
picked tool 'python ../merge' for b (binary False symlink False)
merging a and b to b
@ -123,9 +123,9 @@ $4 = expected result
ancestor: 924404dff337, local: 86a2aa42fc76+, remote: f4db7e329e71
a: remote is newer -> g
b: local copied/moved to a -> m
preserving b for resolve of b
rev: versions differ -> m
preserving b for resolve of b
preserving rev for resolve of rev
preserving rev for resolve of rev
updating: a 1/3 files (33.33%)
getting a
updating: b 2/3 files (66.67%)
@ -159,10 +159,10 @@ $4 = expected result
resolving manifests
overwrite: False, partial: False
ancestor: 924404dff337, local: e300d1c794ec+, remote: bdb19105162a
rev: versions differ -> m
a: remote moved to b -> m
preserving a for resolve of b
preserving rev for resolve of rev
preserving a for resolve of b
rev: versions differ -> m
preserving rev for resolve of rev
removing a
updating: a 1/2 files (50.00%)
picked tool 'python ../merge' for b (binary False symlink False)
@ -195,9 +195,9 @@ $4 = expected result
overwrite: False, partial: False
ancestor: 924404dff337, local: 02963e448370+, remote: f4db7e329e71
b: local copied/moved to a -> m
preserving b for resolve of b
rev: versions differ -> m
preserving b for resolve of b
preserving rev for resolve of rev
preserving rev for resolve of rev
updating: b 1/2 files (50.00%)
picked tool 'python ../merge' for b (binary False symlink False)
merging b and a to b
@ -228,9 +228,9 @@ $4 = expected result
resolving manifests
overwrite: False, partial: False
ancestor: 924404dff337, local: 94b33a1b7f2d+, remote: 4ce40f5aca24
rev: versions differ -> m
b: remote created -> g
preserving rev for resolve of rev
rev: versions differ -> m
preserving rev for resolve of rev
updating: b 1/2 files (50.00%)
getting b
updating: rev 2/2 files (100.00%)
@ -259,7 +259,7 @@ $4 = expected result
overwrite: False, partial: False
ancestor: 924404dff337, local: 86a2aa42fc76+, remote: 97c705ade336
rev: versions differ -> m
preserving rev for resolve of rev
preserving rev for resolve of rev
updating: rev 1/1 files (100.00%)
picked tool 'python ../merge' for rev (binary False symlink False)
merging rev
@ -286,9 +286,9 @@ $4 = expected result
overwrite: False, partial: False
ancestor: 924404dff337, local: 94b33a1b7f2d+, remote: bdb19105162a
a: other deleted -> r
rev: versions differ -> m
b: remote created -> g
preserving rev for resolve of rev
rev: versions differ -> m
preserving rev for resolve of rev
updating: a 1/3 files (33.33%)
removing a
updating: b 2/3 files (66.67%)
@ -318,7 +318,7 @@ $4 = expected result
overwrite: False, partial: False
ancestor: 924404dff337, local: 02963e448370+, remote: 97c705ade336
rev: versions differ -> m
preserving rev for resolve of rev
preserving rev for resolve of rev
updating: rev 1/1 files (100.00%)
picked tool 'python ../merge' for rev (binary False symlink False)
merging rev
@ -339,9 +339,9 @@ $4 = expected result
overwrite: False, partial: False
ancestor: 924404dff337, local: 62e7bf090eba+, remote: 49b6d8032493
b: versions differ -> m
preserving b for resolve of b
rev: versions differ -> m
preserving b for resolve of b
preserving rev for resolve of rev
preserving rev for resolve of rev
updating: b 1/2 files (50.00%)
picked tool 'python ../merge' for b (binary False symlink False)
merging b
@ -373,13 +373,13 @@ m "um a c" "um x c" " " "10 do merge with no ancestor"
src: 'a' -> dst: 'b' !
src: 'a' -> dst: 'c' !
checking for directory renames
a: divergent renames -> dr
resolving manifests
overwrite: False, partial: False
ancestor: 924404dff337, local: 02963e448370+, remote: fe905ef2c33e
rev: versions differ -> m
a: divergent renames -> dr
c: remote created -> g
preserving rev for resolve of rev
rev: versions differ -> m
preserving rev for resolve of rev
updating: a 1/3 files (33.33%)
note: possible conflict - a was renamed multiple times to:
b
@ -407,9 +407,9 @@ m "um a c" "um x c" " " "10 do merge with no ancestor"
overwrite: False, partial: False
ancestor: 924404dff337, local: 86a2aa42fc76+, remote: af30c7647fc7
b: versions differ -> m
preserving b for resolve of b
rev: versions differ -> m
preserving b for resolve of b
preserving rev for resolve of rev
preserving rev for resolve of rev
updating: b 1/2 files (50.00%)
picked tool 'python ../merge' for b (binary False symlink False)
merging b
@ -436,9 +436,9 @@ m "um a c" "um x c" " " "10 do merge with no ancestor"
ancestor: 924404dff337, local: 59318016310c+, remote: bdb19105162a
a: other deleted -> r
b: versions differ -> m
preserving b for resolve of b
rev: versions differ -> m
preserving b for resolve of b
preserving rev for resolve of rev
preserving rev for resolve of rev
updating: a 1/3 files (33.33%)
removing a
updating: b 2/3 files (66.67%)
@ -466,9 +466,9 @@ m "um a c" "um x c" " " "10 do merge with no ancestor"
ancestor: 924404dff337, local: 86a2aa42fc76+, remote: 8dbce441892a
a: remote is newer -> g
b: versions differ -> m
preserving b for resolve of b
rev: versions differ -> m
preserving b for resolve of b
preserving rev for resolve of rev
preserving rev for resolve of rev
updating: a 1/3 files (33.33%)
getting a
updating: b 2/3 files (66.67%)
@ -497,9 +497,9 @@ m "um a c" "um x c" " " "10 do merge with no ancestor"
ancestor: 924404dff337, local: 59318016310c+, remote: bdb19105162a
a: other deleted -> r
b: versions differ -> m
preserving b for resolve of b
rev: versions differ -> m
preserving b for resolve of b
preserving rev for resolve of rev
preserving rev for resolve of rev
updating: a 1/3 files (33.33%)
removing a
updating: b 2/3 files (66.67%)
@ -527,9 +527,9 @@ m "um a c" "um x c" " " "10 do merge with no ancestor"
ancestor: 924404dff337, local: 86a2aa42fc76+, remote: 8dbce441892a
a: remote is newer -> g
b: versions differ -> m
preserving b for resolve of b
rev: versions differ -> m
preserving b for resolve of b
preserving rev for resolve of rev
preserving rev for resolve of rev
updating: a 1/3 files (33.33%)
getting a
updating: b 2/3 files (66.67%)
@ -557,9 +557,9 @@ m "um a c" "um x c" " " "10 do merge with no ancestor"
overwrite: False, partial: False
ancestor: 924404dff337, local: 0b76e65c8289+, remote: 4ce40f5aca24
b: versions differ -> m
preserving b for resolve of b
rev: versions differ -> m
preserving b for resolve of b
preserving rev for resolve of rev
preserving rev for resolve of rev
updating: b 1/2 files (50.00%)
picked tool 'python ../merge' for b (binary False symlink False)
merging b
@ -584,13 +584,13 @@ m "um a c" "um x c" " " "10 do merge with no ancestor"
resolving manifests
overwrite: False, partial: False
ancestor: 924404dff337, local: 02963e448370+, remote: 8dbce441892a
b: versions differ -> m
rev: versions differ -> m
remote changed a which local deleted
use (c)hanged version or leave (d)eleted? c
a: prompt recreating -> g
preserving b for resolve of b
preserving rev for resolve of rev
b: versions differ -> m
preserving b for resolve of b
rev: versions differ -> m
preserving rev for resolve of rev
updating: a 1/3 files (33.33%)
getting a
updating: b 2/3 files (66.67%)
@ -617,13 +617,13 @@ m "um a c" "um x c" " " "10 do merge with no ancestor"
resolving manifests
overwrite: False, partial: False
ancestor: 924404dff337, local: 0b76e65c8289+, remote: bdb19105162a
b: versions differ -> m
rev: versions differ -> m
local changed a which remote deleted
use (c)hanged version or (d)elete? c
a: prompt keep -> a
preserving b for resolve of b
preserving rev for resolve of rev
b: versions differ -> m
preserving b for resolve of b
rev: versions differ -> m
preserving rev for resolve of rev
updating: a 1/3 files (33.33%)
updating: b 2/3 files (66.67%)
picked tool 'python ../merge' for b (binary False symlink False)
@ -654,10 +654,10 @@ m "um a c" "um x c" " " "10 do merge with no ancestor"
resolving manifests
overwrite: False, partial: False
ancestor: 924404dff337, local: e300d1c794ec+, remote: 49b6d8032493
rev: versions differ -> m
a: remote moved to b -> m
preserving a for resolve of b
preserving rev for resolve of rev
preserving a for resolve of b
rev: versions differ -> m
preserving rev for resolve of rev
removing a
updating: a 1/2 files (50.00%)
picked tool 'python ../merge' for b (binary False symlink False)
@ -689,9 +689,9 @@ m "um a c" "um x c" " " "10 do merge with no ancestor"
overwrite: False, partial: False
ancestor: 924404dff337, local: 62e7bf090eba+, remote: f4db7e329e71
b: local copied/moved to a -> m
preserving b for resolve of b
rev: versions differ -> m
preserving b for resolve of b
preserving rev for resolve of rev
preserving rev for resolve of rev
updating: b 1/2 files (50.00%)
picked tool 'python ../merge' for b (binary False symlink False)
merging b and a to b
@ -727,10 +727,10 @@ m "nm a b" "um x a" " " "22 get a, keep b"
overwrite: False, partial: False
ancestor: 924404dff337, local: 02963e448370+, remote: 2b958612230f
b: local copied/moved to a -> m
rev: versions differ -> m
preserving b for resolve of b
c: remote created -> g
preserving b for resolve of b
preserving rev for resolve of rev
rev: versions differ -> m
preserving rev for resolve of rev
updating: b 1/3 files (33.33%)
picked tool 'python ../merge' for b (binary False symlink False)
merging b and a to b

View File

@ -244,7 +244,7 @@ merge tests
overwrite: False, partial: False
ancestor: 6747d179aa9a, local: 20a0db6fbf6c+, remote: 7af322bc1198
t: versions differ -> m
preserving t for resolve of t
preserving t for resolve of t
updating: t 1/1 files (100.00%)
picked tool 'internal:merge' for t (binary False symlink False)
merging t

View File

@ -47,8 +47,8 @@
overwrite: False, partial: False
ancestor: c19d34741b0a, local: c19d34741b0a+, remote: 1e71731e6fbb
a: versions differ -> m
preserving a for resolve of a
b: remote created -> g
preserving a for resolve of a
updating: a 1/2 files (50.00%)
picked tool 'true' for a (binary False symlink False)
merging a
@ -67,9 +67,9 @@
resolving manifests
overwrite: False, partial: False
ancestor: 1e71731e6fbb, local: 1e71731e6fbb+, remote: c19d34741b0a
a: versions differ -> m
b: other deleted -> r
preserving a for resolve of a
a: versions differ -> m
preserving a for resolve of a
updating: b 1/2 files (50.00%)
removing b
updating: a 2/2 files (100.00%)
@ -101,8 +101,8 @@
overwrite: False, partial: False
ancestor: c19d34741b0a, local: c19d34741b0a+, remote: 1e71731e6fbb
a: versions differ -> m
preserving a for resolve of a
b: remote created -> g
preserving a for resolve of a
updating: a 1/2 files (50.00%)
picked tool 'true' for a (binary False symlink False)
merging a
@ -179,9 +179,9 @@ create a second head
overwrite: False, partial: False
ancestor: c19d34741b0a, local: 1e71731e6fbb+, remote: 83c51d0caff4
a: versions differ -> m
preserving a for resolve of a
b: versions differ -> m
preserving a for resolve of a
preserving b for resolve of b
preserving b for resolve of b
updating: a 1/2 files (50.00%)
picked tool 'true' for a (binary False symlink False)
merging a