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
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
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 ..