Mercurial > hg
annotate tests/test-rename-merge1.t @ 42486:35d674a3d5db
copies: don't filter out copy targets created on other side of merge commit
If file X is copied to Y on one side of merge and the other side
creates Y (no copy), we would not mark that as copy. In the
changeset-centric pathcopies() version, that was done by checking if
the copy target existed on the other branch. Even though merge commits
are pretty uncommon, it still turned out to be too expensive to load
the manifest of the parents of merge commits. In a repo of
mozilla-unified converted to storing copies in changesets, about 2m30s
of `hg debugpathcopies FIREFOX_BETA_59_END FIREFOX_BETA_60_BASE` is
spent on this check of merge commits.
I tried to think of a way of storing more information in the
changesets in order to cheaply detect these cases, but I couldn't
think of a solution. So this patch simply removes those checks.
For reference, these extra copies are reported from the aforementioned
command after this patch:
browser/base/content/sanitize.js -> browser/modules/Sanitizer.jsm
testing/mozbase/mozprocess/tests/process_normal_finish_python.ini -> testing/mozbase/mozprocess/tests/process_normal_finish.ini
testing/mozbase/mozprocess/tests/process_waittimeout_python.ini -> testing/mozbase/mozprocess/tests/process_waittimeout.ini
testing/mozbase/mozprocess/tests/process_waittimeout_10s_python.ini -> testing/mozbase/mozprocess/tests/process_waittimeout_10s.ini
Since these copies were created on one side of some merge, it still
seems reasonable to include them, so I'm not even sure it's worse than
filelog pathcopies(), just different.
Differential Revision: https://phab.mercurial-scm.org/D6420
author | Martin von Zweigbergk <martinvonz@google.com> |
---|---|
date | Thu, 18 Apr 2019 21:22:14 -0700 |
parents | c83c08cf02b7 |
children | ab416b5d9b91 |
rev | line source |
---|---|
12298
f254204d8b8d
tests: unify test-rename-merge1
Adrian Buehlmann <adrian@cadifra.com>
parents:
8167
diff
changeset
|
1 $ hg init |
f254204d8b8d
tests: unify test-rename-merge1
Adrian Buehlmann <adrian@cadifra.com>
parents:
8167
diff
changeset
|
2 |
f254204d8b8d
tests: unify test-rename-merge1
Adrian Buehlmann <adrian@cadifra.com>
parents:
8167
diff
changeset
|
3 $ echo "[merge]" >> .hg/hgrc |
f254204d8b8d
tests: unify test-rename-merge1
Adrian Buehlmann <adrian@cadifra.com>
parents:
8167
diff
changeset
|
4 $ echo "followcopies = 1" >> .hg/hgrc |
f254204d8b8d
tests: unify test-rename-merge1
Adrian Buehlmann <adrian@cadifra.com>
parents:
8167
diff
changeset
|
5 |
f254204d8b8d
tests: unify test-rename-merge1
Adrian Buehlmann <adrian@cadifra.com>
parents:
8167
diff
changeset
|
6 $ echo foo > a |
f254204d8b8d
tests: unify test-rename-merge1
Adrian Buehlmann <adrian@cadifra.com>
parents:
8167
diff
changeset
|
7 $ echo foo > a2 |
f254204d8b8d
tests: unify test-rename-merge1
Adrian Buehlmann <adrian@cadifra.com>
parents:
8167
diff
changeset
|
8 $ hg add a a2 |
f254204d8b8d
tests: unify test-rename-merge1
Adrian Buehlmann <adrian@cadifra.com>
parents:
8167
diff
changeset
|
9 $ hg ci -m "start" |
f254204d8b8d
tests: unify test-rename-merge1
Adrian Buehlmann <adrian@cadifra.com>
parents:
8167
diff
changeset
|
10 |
f254204d8b8d
tests: unify test-rename-merge1
Adrian Buehlmann <adrian@cadifra.com>
parents:
8167
diff
changeset
|
11 $ hg mv a b |
f254204d8b8d
tests: unify test-rename-merge1
Adrian Buehlmann <adrian@cadifra.com>
parents:
8167
diff
changeset
|
12 $ hg mv a2 b2 |
f254204d8b8d
tests: unify test-rename-merge1
Adrian Buehlmann <adrian@cadifra.com>
parents:
8167
diff
changeset
|
13 $ hg ci -m "rename" |
f254204d8b8d
tests: unify test-rename-merge1
Adrian Buehlmann <adrian@cadifra.com>
parents:
8167
diff
changeset
|
14 |
f254204d8b8d
tests: unify test-rename-merge1
Adrian Buehlmann <adrian@cadifra.com>
parents:
8167
diff
changeset
|
15 $ hg co 0 |
f254204d8b8d
tests: unify test-rename-merge1
Adrian Buehlmann <adrian@cadifra.com>
parents:
8167
diff
changeset
|
16 2 files updated, 0 files merged, 2 files removed, 0 files unresolved |
f254204d8b8d
tests: unify test-rename-merge1
Adrian Buehlmann <adrian@cadifra.com>
parents:
8167
diff
changeset
|
17 |
f254204d8b8d
tests: unify test-rename-merge1
Adrian Buehlmann <adrian@cadifra.com>
parents:
8167
diff
changeset
|
18 $ echo blahblah > a |
f254204d8b8d
tests: unify test-rename-merge1
Adrian Buehlmann <adrian@cadifra.com>
parents:
8167
diff
changeset
|
19 $ echo blahblah > a2 |
f254204d8b8d
tests: unify test-rename-merge1
Adrian Buehlmann <adrian@cadifra.com>
parents:
8167
diff
changeset
|
20 $ hg mv a2 c2 |
f254204d8b8d
tests: unify test-rename-merge1
Adrian Buehlmann <adrian@cadifra.com>
parents:
8167
diff
changeset
|
21 $ hg ci -m "modify" |
f254204d8b8d
tests: unify test-rename-merge1
Adrian Buehlmann <adrian@cadifra.com>
parents:
8167
diff
changeset
|
22 created new head |
3153
c82ea81d6850
Add core copy detection algorithm
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
23 |
12298
f254204d8b8d
tests: unify test-rename-merge1
Adrian Buehlmann <adrian@cadifra.com>
parents:
8167
diff
changeset
|
24 $ hg merge -y --debug |
f254204d8b8d
tests: unify test-rename-merge1
Adrian Buehlmann <adrian@cadifra.com>
parents:
8167
diff
changeset
|
25 unmatched files in local: |
f254204d8b8d
tests: unify test-rename-merge1
Adrian Buehlmann <adrian@cadifra.com>
parents:
8167
diff
changeset
|
26 c2 |
f254204d8b8d
tests: unify test-rename-merge1
Adrian Buehlmann <adrian@cadifra.com>
parents:
8167
diff
changeset
|
27 unmatched files in other: |
f254204d8b8d
tests: unify test-rename-merge1
Adrian Buehlmann <adrian@cadifra.com>
parents:
8167
diff
changeset
|
28 b |
f254204d8b8d
tests: unify test-rename-merge1
Adrian Buehlmann <adrian@cadifra.com>
parents:
8167
diff
changeset
|
29 b2 |
16795
e9ae770eff1c
merge: show renamed on one and deleted on the other side in debug output
Thomas Arendsen Hein <thomas@intevation.de>
parents:
16794
diff
changeset
|
30 all copies found (* = to merge, ! = divergent, % = renamed and deleted): |
18135
a6fe1b9cc68f
copies: make debug messages more sensible
Siddharth Agarwal <sid0@fb.com>
parents:
17132
diff
changeset
|
31 src: 'a' -> dst: 'b' * |
a6fe1b9cc68f
copies: make debug messages more sensible
Siddharth Agarwal <sid0@fb.com>
parents:
17132
diff
changeset
|
32 src: 'a2' -> dst: 'b2' ! |
18362
5a4f220fbfca
copies: report found copies sorted
Mads Kiilerich <mads@kiilerich.com>
parents:
18135
diff
changeset
|
33 src: 'a2' -> dst: 'c2' ! |
12298
f254204d8b8d
tests: unify test-rename-merge1
Adrian Buehlmann <adrian@cadifra.com>
parents:
8167
diff
changeset
|
34 checking for directory renames |
f254204d8b8d
tests: unify test-rename-merge1
Adrian Buehlmann <adrian@cadifra.com>
parents:
8167
diff
changeset
|
35 resolving manifests |
18605
bcf29565d89f
manifestmerge: pass in branchmerge and force separately
Siddharth Agarwal <sid0@fb.com>
parents:
18541
diff
changeset
|
36 branchmerge: True, force: False, partial: False |
15625
efdcce3fd2d5
merge: make debug output easier to read
Martin Geisler <mg@aragost.com>
parents:
14182
diff
changeset
|
37 ancestor: af1939970a1c, local: 044f8520aeeb+, remote: 85c198ef2f6c |
26957
d16d73173fdd
merge: move messages about possible conflicts a litte earlier
Martin von Zweigbergk <martinvonz@google.com>
parents:
26618
diff
changeset
|
38 note: possible conflict - a2 was renamed multiple times to: |
42110
3a7efcbdf288
copies: print list of divergent renames in sorted order
Martin von Zweigbergk <martinvonz@google.com>
parents:
37283
diff
changeset
|
39 b2 |
26957
d16d73173fdd
merge: move messages about possible conflicts a litte earlier
Martin von Zweigbergk <martinvonz@google.com>
parents:
26618
diff
changeset
|
40 c2 |
21391
cb15835456cb
merge: change debug logging - test output changes but no real changes
Mads Kiilerich <madski@unity3d.com>
parents:
21389
diff
changeset
|
41 preserving a for resolve of b |
cb15835456cb
merge: change debug logging - test output changes but no real changes
Mads Kiilerich <madski@unity3d.com>
parents:
21389
diff
changeset
|
42 removing a |
21389
e741972017d9
merge: change priority / ordering of merge actions
Mads Kiilerich <madski@unity3d.com>
parents:
20945
diff
changeset
|
43 b2: remote created -> g |
18631
e2dc5397bc82
tests: update test output (will be folded into parent)
Bryan O'Sullivan <bryano@fb.com>
parents:
18605
diff
changeset
|
44 getting b2 |
26618
8e6d5b7317e6
merge.mergestate: perform all premerges before any merges (BC)
Siddharth Agarwal <sid0@fb.com>
parents:
26517
diff
changeset
|
45 b: remote moved from a -> m (premerge) |
27161
296d55def9c4
filemerge: add debug output for whether this is a change/delete conflict
Siddharth Agarwal <sid0@fb.com>
parents:
26957
diff
changeset
|
46 picked tool ':merge' for b (binary False symlink False changedelete False) |
12298
f254204d8b8d
tests: unify test-rename-merge1
Adrian Buehlmann <adrian@cadifra.com>
parents:
8167
diff
changeset
|
47 merging a and b to b |
f254204d8b8d
tests: unify test-rename-merge1
Adrian Buehlmann <adrian@cadifra.com>
parents:
8167
diff
changeset
|
48 my b@044f8520aeeb+ other b@85c198ef2f6c ancestor a@af1939970a1c |
f254204d8b8d
tests: unify test-rename-merge1
Adrian Buehlmann <adrian@cadifra.com>
parents:
8167
diff
changeset
|
49 premerge successful |
f254204d8b8d
tests: unify test-rename-merge1
Adrian Buehlmann <adrian@cadifra.com>
parents:
8167
diff
changeset
|
50 1 files updated, 1 files merged, 0 files removed, 0 files unresolved |
f254204d8b8d
tests: unify test-rename-merge1
Adrian Buehlmann <adrian@cadifra.com>
parents:
8167
diff
changeset
|
51 (branch merge, don't forget to commit) |
f254204d8b8d
tests: unify test-rename-merge1
Adrian Buehlmann <adrian@cadifra.com>
parents:
8167
diff
changeset
|
52 |
f254204d8b8d
tests: unify test-rename-merge1
Adrian Buehlmann <adrian@cadifra.com>
parents:
8167
diff
changeset
|
53 $ hg status -AC |
f254204d8b8d
tests: unify test-rename-merge1
Adrian Buehlmann <adrian@cadifra.com>
parents:
8167
diff
changeset
|
54 M b |
f254204d8b8d
tests: unify test-rename-merge1
Adrian Buehlmann <adrian@cadifra.com>
parents:
8167
diff
changeset
|
55 a |
f254204d8b8d
tests: unify test-rename-merge1
Adrian Buehlmann <adrian@cadifra.com>
parents:
8167
diff
changeset
|
56 M b2 |
f254204d8b8d
tests: unify test-rename-merge1
Adrian Buehlmann <adrian@cadifra.com>
parents:
8167
diff
changeset
|
57 R a |
f254204d8b8d
tests: unify test-rename-merge1
Adrian Buehlmann <adrian@cadifra.com>
parents:
8167
diff
changeset
|
58 C c2 |
f254204d8b8d
tests: unify test-rename-merge1
Adrian Buehlmann <adrian@cadifra.com>
parents:
8167
diff
changeset
|
59 |
f254204d8b8d
tests: unify test-rename-merge1
Adrian Buehlmann <adrian@cadifra.com>
parents:
8167
diff
changeset
|
60 $ cat b |
f254204d8b8d
tests: unify test-rename-merge1
Adrian Buehlmann <adrian@cadifra.com>
parents:
8167
diff
changeset
|
61 blahblah |
f254204d8b8d
tests: unify test-rename-merge1
Adrian Buehlmann <adrian@cadifra.com>
parents:
8167
diff
changeset
|
62 |
f254204d8b8d
tests: unify test-rename-merge1
Adrian Buehlmann <adrian@cadifra.com>
parents:
8167
diff
changeset
|
63 $ hg ci -m "merge" |
f254204d8b8d
tests: unify test-rename-merge1
Adrian Buehlmann <adrian@cadifra.com>
parents:
8167
diff
changeset
|
64 |
14182
ec5886db9dc6
tests: fix deprecated use of hg debugdata/debugindex
Sune Foldager <cryo@cyanite.org>
parents:
13537
diff
changeset
|
65 $ hg debugindex b |
37283
d4e62df1c73d
debugcommands: drop offset and length from debugindex by default
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37282
diff
changeset
|
66 rev linkrev nodeid p1 p2 |
d4e62df1c73d
debugcommands: drop offset and length from debugindex by default
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37282
diff
changeset
|
67 0 1 57eacc201a7f 000000000000 000000000000 |
d4e62df1c73d
debugcommands: drop offset and length from debugindex by default
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37282
diff
changeset
|
68 1 3 4727ba907962 000000000000 57eacc201a7f |
12298
f254204d8b8d
tests: unify test-rename-merge1
Adrian Buehlmann <adrian@cadifra.com>
parents:
8167
diff
changeset
|
69 |
f254204d8b8d
tests: unify test-rename-merge1
Adrian Buehlmann <adrian@cadifra.com>
parents:
8167
diff
changeset
|
70 $ hg debugrename b |
f254204d8b8d
tests: unify test-rename-merge1
Adrian Buehlmann <adrian@cadifra.com>
parents:
8167
diff
changeset
|
71 b renamed from a:dd03b83622e78778b403775d0d074b9ac7387a66 |
f254204d8b8d
tests: unify test-rename-merge1
Adrian Buehlmann <adrian@cadifra.com>
parents:
8167
diff
changeset
|
72 |
12683
ada47c38f4e5
copies: don't detect copies as "divergent renames"
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
12298
diff
changeset
|
73 This used to trigger a "divergent renames" warning, despite no renames |
ada47c38f4e5
copies: don't detect copies as "divergent renames"
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
12298
diff
changeset
|
74 |
ada47c38f4e5
copies: don't detect copies as "divergent renames"
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
12298
diff
changeset
|
75 $ hg cp b b3 |
ada47c38f4e5
copies: don't detect copies as "divergent renames"
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
12298
diff
changeset
|
76 $ hg cp b b4 |
ada47c38f4e5
copies: don't detect copies as "divergent renames"
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
12298
diff
changeset
|
77 $ hg ci -A -m 'copy b twice' |
42182
fad480dad04d
tests: avoid cryptic nodeids in tests/test-rename-merge1.t
Martin von Zweigbergk <martinvonz@google.com>
parents:
42167
diff
changeset
|
78 $ hg up '.^' |
12683
ada47c38f4e5
copies: don't detect copies as "divergent renames"
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
12298
diff
changeset
|
79 0 files updated, 0 files merged, 2 files removed, 0 files unresolved |
ada47c38f4e5
copies: don't detect copies as "divergent renames"
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
12298
diff
changeset
|
80 $ hg up |
ada47c38f4e5
copies: don't detect copies as "divergent renames"
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
12298
diff
changeset
|
81 2 files updated, 0 files merged, 0 files removed, 0 files unresolved |
ada47c38f4e5
copies: don't detect copies as "divergent renames"
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
12298
diff
changeset
|
82 $ hg rm b3 b4 |
ada47c38f4e5
copies: don't detect copies as "divergent renames"
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
12298
diff
changeset
|
83 $ hg ci -m 'clean up a bit of our mess' |
ada47c38f4e5
copies: don't detect copies as "divergent renames"
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
12298
diff
changeset
|
84 |
ada47c38f4e5
copies: don't detect copies as "divergent renames"
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
12298
diff
changeset
|
85 We'd rather not warn on divergent renames done in the same changeset (issue2113) |
ada47c38f4e5
copies: don't detect copies as "divergent renames"
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
12298
diff
changeset
|
86 |
ada47c38f4e5
copies: don't detect copies as "divergent renames"
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
12298
diff
changeset
|
87 $ hg cp b b3 |
ada47c38f4e5
copies: don't detect copies as "divergent renames"
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
12298
diff
changeset
|
88 $ hg mv b b4 |
ada47c38f4e5
copies: don't detect copies as "divergent renames"
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
12298
diff
changeset
|
89 $ hg ci -A -m 'divergent renames in same changeset' |
42182
fad480dad04d
tests: avoid cryptic nodeids in tests/test-rename-merge1.t
Martin von Zweigbergk <martinvonz@google.com>
parents:
42167
diff
changeset
|
90 $ hg up '.^' |
12683
ada47c38f4e5
copies: don't detect copies as "divergent renames"
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
12298
diff
changeset
|
91 1 files updated, 0 files merged, 2 files removed, 0 files unresolved |
ada47c38f4e5
copies: don't detect copies as "divergent renames"
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
12298
diff
changeset
|
92 $ hg up |
ada47c38f4e5
copies: don't detect copies as "divergent renames"
Dan Villiom Podlaski Christiansen <danchr@gmail.com>
parents:
12298
diff
changeset
|
93 2 files updated, 0 files merged, 1 files removed, 0 files unresolved |
13468
d100702326d5
context: generate file ancestors in reverse revision order (issue2642)
Matt Mackall <mpm@selenic.com>
parents:
12757
diff
changeset
|
94 |
d100702326d5
context: generate file ancestors in reverse revision order (issue2642)
Matt Mackall <mpm@selenic.com>
parents:
12757
diff
changeset
|
95 Check for issue2642 |
d100702326d5
context: generate file ancestors in reverse revision order (issue2642)
Matt Mackall <mpm@selenic.com>
parents:
12757
diff
changeset
|
96 |
d100702326d5
context: generate file ancestors in reverse revision order (issue2642)
Matt Mackall <mpm@selenic.com>
parents:
12757
diff
changeset
|
97 $ hg init t |
d100702326d5
context: generate file ancestors in reverse revision order (issue2642)
Matt Mackall <mpm@selenic.com>
parents:
12757
diff
changeset
|
98 $ cd t |
d100702326d5
context: generate file ancestors in reverse revision order (issue2642)
Matt Mackall <mpm@selenic.com>
parents:
12757
diff
changeset
|
99 |
d100702326d5
context: generate file ancestors in reverse revision order (issue2642)
Matt Mackall <mpm@selenic.com>
parents:
12757
diff
changeset
|
100 $ echo c0 > f1 |
d100702326d5
context: generate file ancestors in reverse revision order (issue2642)
Matt Mackall <mpm@selenic.com>
parents:
12757
diff
changeset
|
101 $ hg ci -Aqm0 |
d100702326d5
context: generate file ancestors in reverse revision order (issue2642)
Matt Mackall <mpm@selenic.com>
parents:
12757
diff
changeset
|
102 |
d100702326d5
context: generate file ancestors in reverse revision order (issue2642)
Matt Mackall <mpm@selenic.com>
parents:
12757
diff
changeset
|
103 $ hg up null -q |
d100702326d5
context: generate file ancestors in reverse revision order (issue2642)
Matt Mackall <mpm@selenic.com>
parents:
12757
diff
changeset
|
104 $ echo c1 > f1 # backport |
d100702326d5
context: generate file ancestors in reverse revision order (issue2642)
Matt Mackall <mpm@selenic.com>
parents:
12757
diff
changeset
|
105 $ hg ci -Aqm1 |
d100702326d5
context: generate file ancestors in reverse revision order (issue2642)
Matt Mackall <mpm@selenic.com>
parents:
12757
diff
changeset
|
106 $ hg mv f1 f2 |
d100702326d5
context: generate file ancestors in reverse revision order (issue2642)
Matt Mackall <mpm@selenic.com>
parents:
12757
diff
changeset
|
107 $ hg ci -qm2 |
d100702326d5
context: generate file ancestors in reverse revision order (issue2642)
Matt Mackall <mpm@selenic.com>
parents:
12757
diff
changeset
|
108 |
d100702326d5
context: generate file ancestors in reverse revision order (issue2642)
Matt Mackall <mpm@selenic.com>
parents:
12757
diff
changeset
|
109 $ hg up 0 -q |
d100702326d5
context: generate file ancestors in reverse revision order (issue2642)
Matt Mackall <mpm@selenic.com>
parents:
12757
diff
changeset
|
110 $ hg merge 1 -q --tool internal:local |
d100702326d5
context: generate file ancestors in reverse revision order (issue2642)
Matt Mackall <mpm@selenic.com>
parents:
12757
diff
changeset
|
111 $ hg ci -qm3 |
d100702326d5
context: generate file ancestors in reverse revision order (issue2642)
Matt Mackall <mpm@selenic.com>
parents:
12757
diff
changeset
|
112 |
d100702326d5
context: generate file ancestors in reverse revision order (issue2642)
Matt Mackall <mpm@selenic.com>
parents:
12757
diff
changeset
|
113 $ hg merge 2 |
d100702326d5
context: generate file ancestors in reverse revision order (issue2642)
Matt Mackall <mpm@selenic.com>
parents:
12757
diff
changeset
|
114 merging f1 and f2 to f2 |
d100702326d5
context: generate file ancestors in reverse revision order (issue2642)
Matt Mackall <mpm@selenic.com>
parents:
12757
diff
changeset
|
115 0 files updated, 1 files merged, 0 files removed, 0 files unresolved |
d100702326d5
context: generate file ancestors in reverse revision order (issue2642)
Matt Mackall <mpm@selenic.com>
parents:
12757
diff
changeset
|
116 (branch merge, don't forget to commit) |
d100702326d5
context: generate file ancestors in reverse revision order (issue2642)
Matt Mackall <mpm@selenic.com>
parents:
12757
diff
changeset
|
117 |
d100702326d5
context: generate file ancestors in reverse revision order (issue2642)
Matt Mackall <mpm@selenic.com>
parents:
12757
diff
changeset
|
118 $ cat f2 |
d100702326d5
context: generate file ancestors in reverse revision order (issue2642)
Matt Mackall <mpm@selenic.com>
parents:
12757
diff
changeset
|
119 c0 |
13492
ca940d06bf95
tests: test renaming a file added on two branches (issue2089)
Wagner Bruna <wbruna@softwareexpress.com.br>
parents:
13468
diff
changeset
|
120 |
16793
9cbc44a6600e
tests: do not create repos inside repos in test-rename-merge1.t
Thomas Arendsen Hein <thomas@intevation.de>
parents:
16792
diff
changeset
|
121 $ cd .. |
9cbc44a6600e
tests: do not create repos inside repos in test-rename-merge1.t
Thomas Arendsen Hein <thomas@intevation.de>
parents:
16792
diff
changeset
|
122 |
13492
ca940d06bf95
tests: test renaming a file added on two branches (issue2089)
Wagner Bruna <wbruna@softwareexpress.com.br>
parents:
13468
diff
changeset
|
123 Check for issue2089 |
ca940d06bf95
tests: test renaming a file added on two branches (issue2089)
Wagner Bruna <wbruna@softwareexpress.com.br>
parents:
13468
diff
changeset
|
124 |
ca940d06bf95
tests: test renaming a file added on two branches (issue2089)
Wagner Bruna <wbruna@softwareexpress.com.br>
parents:
13468
diff
changeset
|
125 $ hg init repo2089 |
ca940d06bf95
tests: test renaming a file added on two branches (issue2089)
Wagner Bruna <wbruna@softwareexpress.com.br>
parents:
13468
diff
changeset
|
126 $ cd repo2089 |
ca940d06bf95
tests: test renaming a file added on two branches (issue2089)
Wagner Bruna <wbruna@softwareexpress.com.br>
parents:
13468
diff
changeset
|
127 |
13537
37f487b9fbcc
test-rename-merge1: make it easier to review, windows friendly
Patrick Mezard <pmezard@gmail.com>
parents:
13492
diff
changeset
|
128 $ echo c0 > f1 |
37f487b9fbcc
test-rename-merge1: make it easier to review, windows friendly
Patrick Mezard <pmezard@gmail.com>
parents:
13492
diff
changeset
|
129 $ hg ci -Aqm0 |
13492
ca940d06bf95
tests: test renaming a file added on two branches (issue2089)
Wagner Bruna <wbruna@softwareexpress.com.br>
parents:
13468
diff
changeset
|
130 |
13537
37f487b9fbcc
test-rename-merge1: make it easier to review, windows friendly
Patrick Mezard <pmezard@gmail.com>
parents:
13492
diff
changeset
|
131 $ hg up null -q |
37f487b9fbcc
test-rename-merge1: make it easier to review, windows friendly
Patrick Mezard <pmezard@gmail.com>
parents:
13492
diff
changeset
|
132 $ echo c1 > f1 |
37f487b9fbcc
test-rename-merge1: make it easier to review, windows friendly
Patrick Mezard <pmezard@gmail.com>
parents:
13492
diff
changeset
|
133 $ hg ci -Aqm1 |
13492
ca940d06bf95
tests: test renaming a file added on two branches (issue2089)
Wagner Bruna <wbruna@softwareexpress.com.br>
parents:
13468
diff
changeset
|
134 |
13537
37f487b9fbcc
test-rename-merge1: make it easier to review, windows friendly
Patrick Mezard <pmezard@gmail.com>
parents:
13492
diff
changeset
|
135 $ hg up 0 -q |
13492
ca940d06bf95
tests: test renaming a file added on two branches (issue2089)
Wagner Bruna <wbruna@softwareexpress.com.br>
parents:
13468
diff
changeset
|
136 $ hg merge 1 -q --tool internal:local |
13537
37f487b9fbcc
test-rename-merge1: make it easier to review, windows friendly
Patrick Mezard <pmezard@gmail.com>
parents:
13492
diff
changeset
|
137 $ echo c2 > f1 |
37f487b9fbcc
test-rename-merge1: make it easier to review, windows friendly
Patrick Mezard <pmezard@gmail.com>
parents:
13492
diff
changeset
|
138 $ hg ci -qm2 |
13492
ca940d06bf95
tests: test renaming a file added on two branches (issue2089)
Wagner Bruna <wbruna@softwareexpress.com.br>
parents:
13468
diff
changeset
|
139 |
13537
37f487b9fbcc
test-rename-merge1: make it easier to review, windows friendly
Patrick Mezard <pmezard@gmail.com>
parents:
13492
diff
changeset
|
140 $ hg up 1 -q |
37f487b9fbcc
test-rename-merge1: make it easier to review, windows friendly
Patrick Mezard <pmezard@gmail.com>
parents:
13492
diff
changeset
|
141 $ hg mv f1 f2 |
37f487b9fbcc
test-rename-merge1: make it easier to review, windows friendly
Patrick Mezard <pmezard@gmail.com>
parents:
13492
diff
changeset
|
142 $ hg ci -Aqm3 |
13492
ca940d06bf95
tests: test renaming a file added on two branches (issue2089)
Wagner Bruna <wbruna@softwareexpress.com.br>
parents:
13468
diff
changeset
|
143 |
13537
37f487b9fbcc
test-rename-merge1: make it easier to review, windows friendly
Patrick Mezard <pmezard@gmail.com>
parents:
13492
diff
changeset
|
144 $ hg up 2 -q |
13492
ca940d06bf95
tests: test renaming a file added on two branches (issue2089)
Wagner Bruna <wbruna@softwareexpress.com.br>
parents:
13468
diff
changeset
|
145 $ hg merge 3 |
13537
37f487b9fbcc
test-rename-merge1: make it easier to review, windows friendly
Patrick Mezard <pmezard@gmail.com>
parents:
13492
diff
changeset
|
146 merging f1 and f2 to f2 |
13492
ca940d06bf95
tests: test renaming a file added on two branches (issue2089)
Wagner Bruna <wbruna@softwareexpress.com.br>
parents:
13468
diff
changeset
|
147 0 files updated, 1 files merged, 0 files removed, 0 files unresolved |
ca940d06bf95
tests: test renaming a file added on two branches (issue2089)
Wagner Bruna <wbruna@softwareexpress.com.br>
parents:
13468
diff
changeset
|
148 (branch merge, don't forget to commit) |
ca940d06bf95
tests: test renaming a file added on two branches (issue2089)
Wagner Bruna <wbruna@softwareexpress.com.br>
parents:
13468
diff
changeset
|
149 |
13537
37f487b9fbcc
test-rename-merge1: make it easier to review, windows friendly
Patrick Mezard <pmezard@gmail.com>
parents:
13492
diff
changeset
|
150 $ cat f2 |
37f487b9fbcc
test-rename-merge1: make it easier to review, windows friendly
Patrick Mezard <pmezard@gmail.com>
parents:
13492
diff
changeset
|
151 c2 |
16793
9cbc44a6600e
tests: do not create repos inside repos in test-rename-merge1.t
Thomas Arendsen Hein <thomas@intevation.de>
parents:
16792
diff
changeset
|
152 |
9cbc44a6600e
tests: do not create repos inside repos in test-rename-merge1.t
Thomas Arendsen Hein <thomas@intevation.de>
parents:
16792
diff
changeset
|
153 $ cd .. |
16794
98687cdddcb1
merge: warn about file deleted in one branch and renamed in other (issue3074)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
16793
diff
changeset
|
154 |
98687cdddcb1
merge: warn about file deleted in one branch and renamed in other (issue3074)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
16793
diff
changeset
|
155 Check for issue3074 |
98687cdddcb1
merge: warn about file deleted in one branch and renamed in other (issue3074)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
16793
diff
changeset
|
156 |
98687cdddcb1
merge: warn about file deleted in one branch and renamed in other (issue3074)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
16793
diff
changeset
|
157 $ hg init repo3074 |
98687cdddcb1
merge: warn about file deleted in one branch and renamed in other (issue3074)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
16793
diff
changeset
|
158 $ cd repo3074 |
98687cdddcb1
merge: warn about file deleted in one branch and renamed in other (issue3074)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
16793
diff
changeset
|
159 $ echo foo > file |
98687cdddcb1
merge: warn about file deleted in one branch and renamed in other (issue3074)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
16793
diff
changeset
|
160 $ hg add file |
98687cdddcb1
merge: warn about file deleted in one branch and renamed in other (issue3074)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
16793
diff
changeset
|
161 $ hg commit -m "added file" |
98687cdddcb1
merge: warn about file deleted in one branch and renamed in other (issue3074)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
16793
diff
changeset
|
162 $ hg mv file newfile |
98687cdddcb1
merge: warn about file deleted in one branch and renamed in other (issue3074)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
16793
diff
changeset
|
163 $ hg commit -m "renamed file" |
98687cdddcb1
merge: warn about file deleted in one branch and renamed in other (issue3074)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
16793
diff
changeset
|
164 $ hg update 0 |
98687cdddcb1
merge: warn about file deleted in one branch and renamed in other (issue3074)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
16793
diff
changeset
|
165 1 files updated, 0 files merged, 1 files removed, 0 files unresolved |
98687cdddcb1
merge: warn about file deleted in one branch and renamed in other (issue3074)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
16793
diff
changeset
|
166 $ hg rm file |
98687cdddcb1
merge: warn about file deleted in one branch and renamed in other (issue3074)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
16793
diff
changeset
|
167 $ hg commit -m "deleted file" |
98687cdddcb1
merge: warn about file deleted in one branch and renamed in other (issue3074)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
16793
diff
changeset
|
168 created new head |
16795
e9ae770eff1c
merge: show renamed on one and deleted on the other side in debug output
Thomas Arendsen Hein <thomas@intevation.de>
parents:
16794
diff
changeset
|
169 $ hg merge --debug |
e9ae770eff1c
merge: show renamed on one and deleted on the other side in debug output
Thomas Arendsen Hein <thomas@intevation.de>
parents:
16794
diff
changeset
|
170 unmatched files in other: |
e9ae770eff1c
merge: show renamed on one and deleted on the other side in debug output
Thomas Arendsen Hein <thomas@intevation.de>
parents:
16794
diff
changeset
|
171 newfile |
e9ae770eff1c
merge: show renamed on one and deleted on the other side in debug output
Thomas Arendsen Hein <thomas@intevation.de>
parents:
16794
diff
changeset
|
172 all copies found (* = to merge, ! = divergent, % = renamed and deleted): |
18135
a6fe1b9cc68f
copies: make debug messages more sensible
Siddharth Agarwal <sid0@fb.com>
parents:
17132
diff
changeset
|
173 src: 'file' -> dst: 'newfile' % |
16795
e9ae770eff1c
merge: show renamed on one and deleted on the other side in debug output
Thomas Arendsen Hein <thomas@intevation.de>
parents:
16794
diff
changeset
|
174 checking for directory renames |
e9ae770eff1c
merge: show renamed on one and deleted on the other side in debug output
Thomas Arendsen Hein <thomas@intevation.de>
parents:
16794
diff
changeset
|
175 resolving manifests |
18605
bcf29565d89f
manifestmerge: pass in branchmerge and force separately
Siddharth Agarwal <sid0@fb.com>
parents:
18541
diff
changeset
|
176 branchmerge: True, force: False, partial: False |
16795
e9ae770eff1c
merge: show renamed on one and deleted on the other side in debug output
Thomas Arendsen Hein <thomas@intevation.de>
parents:
16794
diff
changeset
|
177 ancestor: 19d7f95df299, local: 0084274f6b67+, remote: 5d32493049f0 |
26957
d16d73173fdd
merge: move messages about possible conflicts a litte earlier
Martin von Zweigbergk <martinvonz@google.com>
parents:
26618
diff
changeset
|
178 note: possible conflict - file was deleted and renamed to: |
d16d73173fdd
merge: move messages about possible conflicts a litte earlier
Martin von Zweigbergk <martinvonz@google.com>
parents:
26618
diff
changeset
|
179 newfile |
21389
e741972017d9
merge: change priority / ordering of merge actions
Mads Kiilerich <madski@unity3d.com>
parents:
20945
diff
changeset
|
180 newfile: remote created -> g |
18631
e2dc5397bc82
tests: update test output (will be folded into parent)
Bryan O'Sullivan <bryano@fb.com>
parents:
18605
diff
changeset
|
181 getting newfile |
16794
98687cdddcb1
merge: warn about file deleted in one branch and renamed in other (issue3074)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
16793
diff
changeset
|
182 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
98687cdddcb1
merge: warn about file deleted in one branch and renamed in other (issue3074)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
16793
diff
changeset
|
183 (branch merge, don't forget to commit) |
98687cdddcb1
merge: warn about file deleted in one branch and renamed in other (issue3074)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
16793
diff
changeset
|
184 $ hg status |
98687cdddcb1
merge: warn about file deleted in one branch and renamed in other (issue3074)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
16793
diff
changeset
|
185 M newfile |
98687cdddcb1
merge: warn about file deleted in one branch and renamed in other (issue3074)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
16793
diff
changeset
|
186 $ cd .. |
42221
c83c08cf02b7
tests: add test where copy source is deleted and added back
Martin von Zweigbergk <martinvonz@google.com>
parents:
42182
diff
changeset
|
187 |
c83c08cf02b7
tests: add test where copy source is deleted and added back
Martin von Zweigbergk <martinvonz@google.com>
parents:
42182
diff
changeset
|
188 Check that file is considered unrelated when deleted and recreated |
c83c08cf02b7
tests: add test where copy source is deleted and added back
Martin von Zweigbergk <martinvonz@google.com>
parents:
42182
diff
changeset
|
189 |
c83c08cf02b7
tests: add test where copy source is deleted and added back
Martin von Zweigbergk <martinvonz@google.com>
parents:
42182
diff
changeset
|
190 $ hg init unrelated |
c83c08cf02b7
tests: add test where copy source is deleted and added back
Martin von Zweigbergk <martinvonz@google.com>
parents:
42182
diff
changeset
|
191 $ cd unrelated |
c83c08cf02b7
tests: add test where copy source is deleted and added back
Martin von Zweigbergk <martinvonz@google.com>
parents:
42182
diff
changeset
|
192 $ echo foo > file |
c83c08cf02b7
tests: add test where copy source is deleted and added back
Martin von Zweigbergk <martinvonz@google.com>
parents:
42182
diff
changeset
|
193 $ hg add file |
c83c08cf02b7
tests: add test where copy source is deleted and added back
Martin von Zweigbergk <martinvonz@google.com>
parents:
42182
diff
changeset
|
194 $ hg commit -m "added file" |
c83c08cf02b7
tests: add test where copy source is deleted and added back
Martin von Zweigbergk <martinvonz@google.com>
parents:
42182
diff
changeset
|
195 $ hg cp file newfile |
c83c08cf02b7
tests: add test where copy source is deleted and added back
Martin von Zweigbergk <martinvonz@google.com>
parents:
42182
diff
changeset
|
196 $ hg commit -m "copy file" |
c83c08cf02b7
tests: add test where copy source is deleted and added back
Martin von Zweigbergk <martinvonz@google.com>
parents:
42182
diff
changeset
|
197 $ hg update 0 |
c83c08cf02b7
tests: add test where copy source is deleted and added back
Martin von Zweigbergk <martinvonz@google.com>
parents:
42182
diff
changeset
|
198 0 files updated, 0 files merged, 1 files removed, 0 files unresolved |
c83c08cf02b7
tests: add test where copy source is deleted and added back
Martin von Zweigbergk <martinvonz@google.com>
parents:
42182
diff
changeset
|
199 $ hg rm file |
c83c08cf02b7
tests: add test where copy source is deleted and added back
Martin von Zweigbergk <martinvonz@google.com>
parents:
42182
diff
changeset
|
200 $ hg commit -m "deleted file" |
c83c08cf02b7
tests: add test where copy source is deleted and added back
Martin von Zweigbergk <martinvonz@google.com>
parents:
42182
diff
changeset
|
201 created new head |
c83c08cf02b7
tests: add test where copy source is deleted and added back
Martin von Zweigbergk <martinvonz@google.com>
parents:
42182
diff
changeset
|
202 $ echo bar > file |
c83c08cf02b7
tests: add test where copy source is deleted and added back
Martin von Zweigbergk <martinvonz@google.com>
parents:
42182
diff
changeset
|
203 $ hg add file |
c83c08cf02b7
tests: add test where copy source is deleted and added back
Martin von Zweigbergk <martinvonz@google.com>
parents:
42182
diff
changeset
|
204 $ hg ci -m 'recreate file' |
c83c08cf02b7
tests: add test where copy source is deleted and added back
Martin von Zweigbergk <martinvonz@google.com>
parents:
42182
diff
changeset
|
205 $ hg log -G -T '{rev} {desc}\n' |
c83c08cf02b7
tests: add test where copy source is deleted and added back
Martin von Zweigbergk <martinvonz@google.com>
parents:
42182
diff
changeset
|
206 @ 3 recreate file |
c83c08cf02b7
tests: add test where copy source is deleted and added back
Martin von Zweigbergk <martinvonz@google.com>
parents:
42182
diff
changeset
|
207 | |
c83c08cf02b7
tests: add test where copy source is deleted and added back
Martin von Zweigbergk <martinvonz@google.com>
parents:
42182
diff
changeset
|
208 o 2 deleted file |
c83c08cf02b7
tests: add test where copy source is deleted and added back
Martin von Zweigbergk <martinvonz@google.com>
parents:
42182
diff
changeset
|
209 | |
c83c08cf02b7
tests: add test where copy source is deleted and added back
Martin von Zweigbergk <martinvonz@google.com>
parents:
42182
diff
changeset
|
210 | o 1 copy file |
c83c08cf02b7
tests: add test where copy source is deleted and added back
Martin von Zweigbergk <martinvonz@google.com>
parents:
42182
diff
changeset
|
211 |/ |
c83c08cf02b7
tests: add test where copy source is deleted and added back
Martin von Zweigbergk <martinvonz@google.com>
parents:
42182
diff
changeset
|
212 o 0 added file |
c83c08cf02b7
tests: add test where copy source is deleted and added back
Martin von Zweigbergk <martinvonz@google.com>
parents:
42182
diff
changeset
|
213 |
c83c08cf02b7
tests: add test where copy source is deleted and added back
Martin von Zweigbergk <martinvonz@google.com>
parents:
42182
diff
changeset
|
214 BROKEN: this is inconsistent with `hg merge` (below), which doesn't consider |
c83c08cf02b7
tests: add test where copy source is deleted and added back
Martin von Zweigbergk <martinvonz@google.com>
parents:
42182
diff
changeset
|
215 'file' renamed same since it was deleted for a while |
c83c08cf02b7
tests: add test where copy source is deleted and added back
Martin von Zweigbergk <martinvonz@google.com>
parents:
42182
diff
changeset
|
216 $ hg st --copies --rev 3 --rev 1 |
c83c08cf02b7
tests: add test where copy source is deleted and added back
Martin von Zweigbergk <martinvonz@google.com>
parents:
42182
diff
changeset
|
217 M file |
c83c08cf02b7
tests: add test where copy source is deleted and added back
Martin von Zweigbergk <martinvonz@google.com>
parents:
42182
diff
changeset
|
218 A newfile |
c83c08cf02b7
tests: add test where copy source is deleted and added back
Martin von Zweigbergk <martinvonz@google.com>
parents:
42182
diff
changeset
|
219 file |
c83c08cf02b7
tests: add test where copy source is deleted and added back
Martin von Zweigbergk <martinvonz@google.com>
parents:
42182
diff
changeset
|
220 $ hg merge --debug 1 |
c83c08cf02b7
tests: add test where copy source is deleted and added back
Martin von Zweigbergk <martinvonz@google.com>
parents:
42182
diff
changeset
|
221 unmatched files in other: |
c83c08cf02b7
tests: add test where copy source is deleted and added back
Martin von Zweigbergk <martinvonz@google.com>
parents:
42182
diff
changeset
|
222 newfile |
c83c08cf02b7
tests: add test where copy source is deleted and added back
Martin von Zweigbergk <martinvonz@google.com>
parents:
42182
diff
changeset
|
223 all copies found (* = to merge, ! = divergent, % = renamed and deleted): |
c83c08cf02b7
tests: add test where copy source is deleted and added back
Martin von Zweigbergk <martinvonz@google.com>
parents:
42182
diff
changeset
|
224 src: 'file' -> dst: 'newfile' |
c83c08cf02b7
tests: add test where copy source is deleted and added back
Martin von Zweigbergk <martinvonz@google.com>
parents:
42182
diff
changeset
|
225 checking for directory renames |
c83c08cf02b7
tests: add test where copy source is deleted and added back
Martin von Zweigbergk <martinvonz@google.com>
parents:
42182
diff
changeset
|
226 resolving manifests |
c83c08cf02b7
tests: add test where copy source is deleted and added back
Martin von Zweigbergk <martinvonz@google.com>
parents:
42182
diff
changeset
|
227 branchmerge: True, force: False, partial: False |
c83c08cf02b7
tests: add test where copy source is deleted and added back
Martin von Zweigbergk <martinvonz@google.com>
parents:
42182
diff
changeset
|
228 ancestor: 19d7f95df299, local: 4e4a42b1cbdf+, remote: 45b14aae7432 |
c83c08cf02b7
tests: add test where copy source is deleted and added back
Martin von Zweigbergk <martinvonz@google.com>
parents:
42182
diff
changeset
|
229 newfile: remote created -> g |
c83c08cf02b7
tests: add test where copy source is deleted and added back
Martin von Zweigbergk <martinvonz@google.com>
parents:
42182
diff
changeset
|
230 getting newfile |
c83c08cf02b7
tests: add test where copy source is deleted and added back
Martin von Zweigbergk <martinvonz@google.com>
parents:
42182
diff
changeset
|
231 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
c83c08cf02b7
tests: add test where copy source is deleted and added back
Martin von Zweigbergk <martinvonz@google.com>
parents:
42182
diff
changeset
|
232 (branch merge, don't forget to commit) |
c83c08cf02b7
tests: add test where copy source is deleted and added back
Martin von Zweigbergk <martinvonz@google.com>
parents:
42182
diff
changeset
|
233 $ hg status |
c83c08cf02b7
tests: add test where copy source is deleted and added back
Martin von Zweigbergk <martinvonz@google.com>
parents:
42182
diff
changeset
|
234 M newfile |
c83c08cf02b7
tests: add test where copy source is deleted and added back
Martin von Zweigbergk <martinvonz@google.com>
parents:
42182
diff
changeset
|
235 $ cd .. |