comparison tests/test-rename-merge1.t @ 23524:a1a7c94def6d

merge: don't report progress for dr/rd actions It is easier to reason about certain algorithms in terms of a file->action mapping than the current action->list-of-files. Bid merge is already written this way (but with a list of actions per file), and largefiles' overridecalculateupdates() will also benefit. However, that requires us to have at most one action per file. That requirement is currently violated by 'dr' (divergent rename) and 'rd' (rename and delete) actions, which can exist for the same file as some other action. These actions are only used for displaying warnings to the user; they don't change anything in the working copy or the dirstate. In this way, they are similar to the 'k' (keep) action. However, they are even less action-like than 'k' is: 'k' at least describes what to do with the file ("do nothing"), while 'dr' and 'rd' or only annotations for files for which there may exist other, "real" actions. As a first step towards separating these acitons out, stop including them in the progress output, just like we already exclude the 'k' action.
author Martin von Zweigbergk <martinvonz@google.com>
date Fri, 05 Dec 2014 16:13:26 -0800
parents cb15835456cb
children bd625cd4e5e7
comparison
equal deleted inserted replaced
23523:01a8dfc79cdc 23524:a1a7c94def6d
38 ancestor: af1939970a1c, local: 044f8520aeeb+, remote: 85c198ef2f6c 38 ancestor: af1939970a1c, local: 044f8520aeeb+, remote: 85c198ef2f6c
39 preserving a for resolve of b 39 preserving a for resolve of b
40 removing a 40 removing a
41 b2: remote created -> g 41 b2: remote created -> g
42 getting b2 42 getting b2
43 updating: b2 1/3 files (33.33%) 43 updating: b2 1/2 files (50.00%)
44 b: remote moved from a -> m 44 b: remote moved from a -> m
45 updating: b 2/3 files (66.67%) 45 updating: b 2/2 files (100.00%)
46 picked tool 'internal:merge' for b (binary False symlink False) 46 picked tool 'internal:merge' for b (binary False symlink False)
47 merging a and b to b 47 merging a and b to b
48 my b@044f8520aeeb+ other b@85c198ef2f6c ancestor a@af1939970a1c 48 my b@044f8520aeeb+ other b@85c198ef2f6c ancestor a@af1939970a1c
49 premerge successful 49 premerge successful
50 a2: divergent renames -> dr
51 updating: a2 3/3 files (100.00%)
52 note: possible conflict - a2 was renamed multiple times to: 50 note: possible conflict - a2 was renamed multiple times to:
53 c2 51 c2
54 b2 52 b2
55 1 files updated, 1 files merged, 0 files removed, 0 files unresolved 53 1 files updated, 1 files merged, 0 files removed, 0 files unresolved
56 (branch merge, don't forget to commit) 54 (branch merge, don't forget to commit)
181 resolving manifests 179 resolving manifests
182 branchmerge: True, force: False, partial: False 180 branchmerge: True, force: False, partial: False
183 ancestor: 19d7f95df299, local: 0084274f6b67+, remote: 5d32493049f0 181 ancestor: 19d7f95df299, local: 0084274f6b67+, remote: 5d32493049f0
184 newfile: remote created -> g 182 newfile: remote created -> g
185 getting newfile 183 getting newfile
186 updating: newfile 1/2 files (50.00%) 184 updating: newfile 1/1 files (100.00%)
187 file: rename and delete -> rd
188 updating: file 2/2 files (100.00%)
189 note: possible conflict - file was deleted and renamed to: 185 note: possible conflict - file was deleted and renamed to:
190 newfile 186 newfile
191 1 files updated, 0 files merged, 0 files removed, 0 files unresolved 187 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
192 (branch merge, don't forget to commit) 188 (branch merge, don't forget to commit)
193 $ hg status 189 $ hg status