Mercurial > hg
annotate tests/test-merge-criss-cross.t @ 26750:9f9ec4abe700
cmdutil: make in-memory changes visible to external editor (issue4378)
Before this patch, external editor process for the commit log can't
view some in-memory changes (especially, of dirstate), because they
aren't written out until the end of transaction (or wlock).
This causes unexpected output of Mercurial commands spawned from that
editor process.
To make in-memory changes visible to external editor process, this
patch does:
- write (or schedule to write) in-memory dirstate changes, and
- set HG_PENDING environment variable, if:
- a transaction is running, and
- there are in-memory changes to be visible
"hg diff" spawned from external editor process for "hg qrefresh"
shows:
- "changes newly imported into the topmost" before 49148d7868df(*)
- "all changes recorded in the topmost by refreshing" after this patch
(*) 49148d7868df changed steps invoking editor process
Even though backward compatibility may be broken, the latter behavior
looks reasonable, because "hg diff" spawned from the editor process
consistently shows "what changes new revision records" regardless of
invocation context.
In fact, issue4378 itself should be resolved by 800e090e9c64, which
made 'repo.transaction()' write in-memory dirstate changes out
explicitly before starting transaction. It also made "hg qrefresh"
imply 'dirstate.write()' before external editor invocation in call
chain below.
- mq.queue.refresh
- strip.strip
- repair.strip
- localrepository.transaction
- dirstate.write
- localrepository.commit
- invoke external editor
Though, this patch has '(issue4378)' in own summary line to indicate
that issues like issue4378 should be fixed by this.
BTW, this patch adds '-m' option to a 'hg ci --amend' execution in
'test-commit-amend.t', to avoid invoking external editor process.
In this case, "unsure" states may be changed to "clean" according to
timestamp or so on. These changes should be written into pending file,
if external editor invocation is required,
Then, writing dirstate changes out breaks stability of test, because
it shows "transaction abort!/rollback completed" occasionally.
Aborting after editor process invocation while commands below may
cause similar instability of tests, too (AFAIK, there is no more such
one, at this revision)
- commit --amend
- without --message/--logfile
- import
- without --message/--logfile,
- without --no-commit,
- without --bypass,
- one of below, and
- patch has no description text, or
- with --edit
- aborting at the 1st patch, which adds or removes file(s)
- if it only changes existing files, status is checked only for
changed files by 'scmutil.matchfiles()', and transition from
"unsure" to "normal" in dirstate doesn't occur (= dirstate
isn't changed, and written out)
- aborting at the 2nd or later patch implies other pending
changes (e.g. changelog), and always causes showing
"transaction abort!/rollback completed"
author | FUJIWARA Katsunori <foozy@lares.dti.ne.jp> |
---|---|
date | Sat, 17 Oct 2015 01:15:34 +0900 |
parents | 8e6d5b7317e6 |
children | 296d55def9c4 |
rev | line source |
---|---|
20636
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
1 Criss cross merging |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
2 |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
3 $ hg init criss-cross |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
4 $ cd criss-cross |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
5 $ echo '0 base' > f1 |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
6 $ echo '0 base' > f2 |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
7 $ hg ci -Aqm '0 base' |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
8 |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
9 $ echo '1 first change' > f1 |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
10 $ hg ci -m '1 first change f1' |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
11 |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
12 $ hg up -qr0 |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
13 $ echo '2 first change' > f2 |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
14 $ hg ci -qm '2 first change f2' |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
15 |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
16 $ hg merge -qr 1 |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
17 $ hg ci -m '3 merge' |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
18 |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
19 $ hg up -qr2 |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
20 $ hg merge -qr1 |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
21 $ hg ci -qm '4 merge' |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
22 |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
23 $ echo '5 second change' > f1 |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
24 $ hg ci -m '5 second change f1' |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
25 |
21125
e94e90a4526e
context: tell when .ancestor picks one of multiple common ancestors heads
Mads Kiilerich <madski@unity3d.com>
parents:
20636
diff
changeset
|
26 $ hg up -r3 |
e94e90a4526e
context: tell when .ancestor picks one of multiple common ancestors heads
Mads Kiilerich <madski@unity3d.com>
parents:
20636
diff
changeset
|
27 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
20636
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
28 $ echo '6 second change' > f2 |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
29 $ hg ci -m '6 second change f2' |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
30 |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
31 $ hg log -G |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
32 @ changeset: 6:3b08d01b0ab5 |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
33 | tag: tip |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
34 | parent: 3:cf89f02107e5 |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
35 | user: test |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
36 | date: Thu Jan 01 00:00:00 1970 +0000 |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
37 | summary: 6 second change f2 |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
38 | |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
39 | o changeset: 5:adfe50279922 |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
40 | | user: test |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
41 | | date: Thu Jan 01 00:00:00 1970 +0000 |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
42 | | summary: 5 second change f1 |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
43 | | |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
44 | o changeset: 4:7d3e55501ae6 |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
45 | |\ parent: 2:40663881a6dd |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
46 | | | parent: 1:0f6b37dbe527 |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
47 | | | user: test |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
48 | | | date: Thu Jan 01 00:00:00 1970 +0000 |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
49 | | | summary: 4 merge |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
50 | | | |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
51 o---+ changeset: 3:cf89f02107e5 |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
52 | | | parent: 2:40663881a6dd |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
53 |/ / parent: 1:0f6b37dbe527 |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
54 | | user: test |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
55 | | date: Thu Jan 01 00:00:00 1970 +0000 |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
56 | | summary: 3 merge |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
57 | | |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
58 | o changeset: 2:40663881a6dd |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
59 | | parent: 0:40494bf2444c |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
60 | | user: test |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
61 | | date: Thu Jan 01 00:00:00 1970 +0000 |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
62 | | summary: 2 first change f2 |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
63 | | |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
64 o | changeset: 1:0f6b37dbe527 |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
65 |/ user: test |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
66 | date: Thu Jan 01 00:00:00 1970 +0000 |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
67 | summary: 1 first change f1 |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
68 | |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
69 o changeset: 0:40494bf2444c |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
70 user: test |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
71 date: Thu Jan 01 00:00:00 1970 +0000 |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
72 summary: 0 base |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
73 |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
74 |
22672
19903277f035
merge: use bid merge by default (BC)
Mads Kiilerich <madski@unity3d.com>
parents:
22671
diff
changeset
|
75 $ hg merge -v --debug --tool internal:dump 5 --config merge.preferancestor='!' |
21125
e94e90a4526e
context: tell when .ancestor picks one of multiple common ancestors heads
Mads Kiilerich <madski@unity3d.com>
parents:
20636
diff
changeset
|
76 note: using 0f6b37dbe527 as ancestor of 3b08d01b0ab5 and adfe50279922 |
21126
99b5eaf372a7
context: introduce merge.preferancestor for controlling which ancestor to pick
Mads Kiilerich <madski@unity3d.com>
parents:
21125
diff
changeset
|
77 alternatively, use --config merge.preferancestor=40663881a6dd |
20636
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
78 searching for copies back to rev 3 |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
79 resolving manifests |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
80 branchmerge: True, force: False, partial: False |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
81 ancestor: 0f6b37dbe527, local: 3b08d01b0ab5+, remote: adfe50279922 |
21391
cb15835456cb
merge: change debug logging - test output changes but no real changes
Mads Kiilerich <madski@unity3d.com>
parents:
21389
diff
changeset
|
82 preserving f2 for resolve of f2 |
20636
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
83 f1: remote is newer -> g |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
84 getting f1 |
26618
8e6d5b7317e6
merge.mergestate: perform all premerges before any merges (BC)
Siddharth Agarwal <sid0@fb.com>
parents:
26611
diff
changeset
|
85 f2: versions differ -> m (premerge) |
26517
d8463a743d7d
filemerge: normalize 'internal:foo' names to ':foo'
Siddharth Agarwal <sid0@fb.com>
parents:
25125
diff
changeset
|
86 picked tool ':dump' for f2 (binary False symlink False) |
20636
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
87 merging f2 |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
88 my f2@3b08d01b0ab5+ other f2@adfe50279922 ancestor f2@40494bf2444c |
26618
8e6d5b7317e6
merge.mergestate: perform all premerges before any merges (BC)
Siddharth Agarwal <sid0@fb.com>
parents:
26611
diff
changeset
|
89 f2: versions differ -> m (merge) |
26611
a5ff66e6d77a
filemerge: break overall filemerge into separate premerge and merge steps
Siddharth Agarwal <sid0@fb.com>
parents:
26517
diff
changeset
|
90 picked tool ':dump' for f2 (binary False symlink False) |
a5ff66e6d77a
filemerge: break overall filemerge into separate premerge and merge steps
Siddharth Agarwal <sid0@fb.com>
parents:
26517
diff
changeset
|
91 my f2@3b08d01b0ab5+ other f2@adfe50279922 ancestor f2@40494bf2444c |
20636
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
92 1 files updated, 0 files merged, 0 files removed, 1 files unresolved |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
93 use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
94 [1] |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
95 |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
96 $ head * |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
97 ==> f1 <== |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
98 5 second change |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
99 |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
100 ==> f2 <== |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
101 6 second change |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
102 |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
103 ==> f2.base <== |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
104 0 base |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
105 |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
106 ==> f2.local <== |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
107 6 second change |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
108 |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
109 ==> f2.orig <== |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
110 6 second change |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
111 |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
112 ==> f2.other <== |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
113 2 first change |
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
114 |
21126
99b5eaf372a7
context: introduce merge.preferancestor for controlling which ancestor to pick
Mads Kiilerich <madski@unity3d.com>
parents:
21125
diff
changeset
|
115 $ hg up -qC . |
99b5eaf372a7
context: introduce merge.preferancestor for controlling which ancestor to pick
Mads Kiilerich <madski@unity3d.com>
parents:
21125
diff
changeset
|
116 $ hg merge -v --tool internal:dump 5 --config merge.preferancestor="null 40663881 3b08d" |
99b5eaf372a7
context: introduce merge.preferancestor for controlling which ancestor to pick
Mads Kiilerich <madski@unity3d.com>
parents:
21125
diff
changeset
|
117 note: using 40663881a6dd as ancestor of 3b08d01b0ab5 and adfe50279922 |
99b5eaf372a7
context: introduce merge.preferancestor for controlling which ancestor to pick
Mads Kiilerich <madski@unity3d.com>
parents:
21125
diff
changeset
|
118 alternatively, use --config merge.preferancestor=0f6b37dbe527 |
99b5eaf372a7
context: introduce merge.preferancestor for controlling which ancestor to pick
Mads Kiilerich <madski@unity3d.com>
parents:
21125
diff
changeset
|
119 resolving manifests |
99b5eaf372a7
context: introduce merge.preferancestor for controlling which ancestor to pick
Mads Kiilerich <madski@unity3d.com>
parents:
21125
diff
changeset
|
120 merging f1 |
99b5eaf372a7
context: introduce merge.preferancestor for controlling which ancestor to pick
Mads Kiilerich <madski@unity3d.com>
parents:
21125
diff
changeset
|
121 0 files updated, 0 files merged, 0 files removed, 1 files unresolved |
99b5eaf372a7
context: introduce merge.preferancestor for controlling which ancestor to pick
Mads Kiilerich <madski@unity3d.com>
parents:
21125
diff
changeset
|
122 use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon |
99b5eaf372a7
context: introduce merge.preferancestor for controlling which ancestor to pick
Mads Kiilerich <madski@unity3d.com>
parents:
21125
diff
changeset
|
123 [1] |
99b5eaf372a7
context: introduce merge.preferancestor for controlling which ancestor to pick
Mads Kiilerich <madski@unity3d.com>
parents:
21125
diff
changeset
|
124 |
21128
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
125 Redo merge with merge.preferancestor="*" to enable bid merge |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
126 |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
127 $ rm f* |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
128 $ hg up -qC . |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
129 $ hg merge -v --debug --tool internal:dump 5 --config merge.preferancestor="*" |
21171
33737ebc6f39
merge: tell the user when we are using bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21170
diff
changeset
|
130 note: merging 3b08d01b0ab5+ and adfe50279922 using bids from ancestors 0f6b37dbe527 and 40663881a6dd |
21128
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
131 |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
132 calculating bids for ancestor 0f6b37dbe527 |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
133 searching for copies back to rev 3 |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
134 resolving manifests |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
135 branchmerge: True, force: False, partial: False |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
136 ancestor: 0f6b37dbe527, local: 3b08d01b0ab5+, remote: adfe50279922 |
21269
fa601c4e03f9
merge: make debug output slightly more helpful by including message for action
Mads Kiilerich <madski@unity3d.com>
parents:
21172
diff
changeset
|
137 f1: remote is newer -> g |
fa601c4e03f9
merge: make debug output slightly more helpful by including message for action
Mads Kiilerich <madski@unity3d.com>
parents:
21172
diff
changeset
|
138 f2: versions differ -> m |
21128
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
139 |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
140 calculating bids for ancestor 40663881a6dd |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
141 searching for copies back to rev 3 |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
142 resolving manifests |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
143 branchmerge: True, force: False, partial: False |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
144 ancestor: 40663881a6dd, local: 3b08d01b0ab5+, remote: adfe50279922 |
23638
09be050ca98c
merge: let bid merge work on the file->action dict
Martin von Zweigbergk <martinvonz@google.com>
parents:
23482
diff
changeset
|
145 f1: versions differ -> m |
23482
208ec8ca7c79
merge: make 'keep' message more descriptive
Martin von Zweigbergk <martinvonz@google.com>
parents:
22673
diff
changeset
|
146 f2: remote unchanged -> k |
21128
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
147 |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
148 auction for merging merge bids |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
149 f1: picking 'get' action |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
150 f2: picking 'keep' action |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
151 end of auction |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
152 |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
153 f1: remote is newer -> g |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
154 getting f1 |
23482
208ec8ca7c79
merge: make 'keep' message more descriptive
Martin von Zweigbergk <martinvonz@google.com>
parents:
22673
diff
changeset
|
155 f2: remote unchanged -> k |
21128
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
156 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
157 (branch merge, don't forget to commit) |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
158 |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
159 $ head * |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
160 ==> f1 <== |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
161 5 second change |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
162 |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
163 ==> f2 <== |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
164 6 second change |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
165 |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
166 |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
167 The other way around: |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
168 |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
169 $ hg up -C -r5 |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
170 2 files updated, 0 files merged, 0 files removed, 0 files unresolved |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
171 $ hg merge -v --debug --config merge.preferancestor="*" |
21171
33737ebc6f39
merge: tell the user when we are using bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21170
diff
changeset
|
172 note: merging adfe50279922+ and 3b08d01b0ab5 using bids from ancestors 0f6b37dbe527 and 40663881a6dd |
21128
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
173 |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
174 calculating bids for ancestor 0f6b37dbe527 |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
175 searching for copies back to rev 3 |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
176 resolving manifests |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
177 branchmerge: True, force: False, partial: False |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
178 ancestor: 0f6b37dbe527, local: adfe50279922+, remote: 3b08d01b0ab5 |
23482
208ec8ca7c79
merge: make 'keep' message more descriptive
Martin von Zweigbergk <martinvonz@google.com>
parents:
22673
diff
changeset
|
179 f1: remote unchanged -> k |
21269
fa601c4e03f9
merge: make debug output slightly more helpful by including message for action
Mads Kiilerich <madski@unity3d.com>
parents:
21172
diff
changeset
|
180 f2: versions differ -> m |
21128
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
181 |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
182 calculating bids for ancestor 40663881a6dd |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
183 searching for copies back to rev 3 |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
184 resolving manifests |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
185 branchmerge: True, force: False, partial: False |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
186 ancestor: 40663881a6dd, local: adfe50279922+, remote: 3b08d01b0ab5 |
23638
09be050ca98c
merge: let bid merge work on the file->action dict
Martin von Zweigbergk <martinvonz@google.com>
parents:
23482
diff
changeset
|
187 f1: versions differ -> m |
21391
cb15835456cb
merge: change debug logging - test output changes but no real changes
Mads Kiilerich <madski@unity3d.com>
parents:
21389
diff
changeset
|
188 f2: remote is newer -> g |
21128
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
189 |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
190 auction for merging merge bids |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
191 f1: picking 'keep' action |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
192 f2: picking 'get' action |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
193 end of auction |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
194 |
21389
e741972017d9
merge: change priority / ordering of merge actions
Mads Kiilerich <madski@unity3d.com>
parents:
21269
diff
changeset
|
195 f2: remote is newer -> g |
21128
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
196 getting f2 |
23482
208ec8ca7c79
merge: make 'keep' message more descriptive
Martin von Zweigbergk <martinvonz@google.com>
parents:
22673
diff
changeset
|
197 f1: remote unchanged -> k |
21128
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
198 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
199 (branch merge, don't forget to commit) |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
200 |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
201 $ head * |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
202 ==> f1 <== |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
203 5 second change |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
204 |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
205 ==> f2 <== |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
206 6 second change |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
207 |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
208 Verify how the output looks and and how verbose it is: |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
209 |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
210 $ hg up -qC |
22672
19903277f035
merge: use bid merge by default (BC)
Mads Kiilerich <madski@unity3d.com>
parents:
22671
diff
changeset
|
211 $ hg merge |
21128
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
212 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
213 (branch merge, don't forget to commit) |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
214 |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
215 $ hg up -qC |
22672
19903277f035
merge: use bid merge by default (BC)
Mads Kiilerich <madski@unity3d.com>
parents:
22671
diff
changeset
|
216 $ hg merge -v |
21171
33737ebc6f39
merge: tell the user when we are using bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21170
diff
changeset
|
217 note: merging 3b08d01b0ab5+ and adfe50279922 using bids from ancestors 0f6b37dbe527 and 40663881a6dd |
21128
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
218 |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
219 calculating bids for ancestor 0f6b37dbe527 |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
220 resolving manifests |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
221 |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
222 calculating bids for ancestor 40663881a6dd |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
223 resolving manifests |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
224 |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
225 auction for merging merge bids |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
226 f1: picking 'get' action |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
227 f2: picking 'keep' action |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
228 end of auction |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
229 |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
230 getting f1 |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
231 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
232 (branch merge, don't forget to commit) |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
233 |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
234 $ hg up -qC |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
235 $ hg merge -v --debug --config merge.preferancestor="*" |
21171
33737ebc6f39
merge: tell the user when we are using bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21170
diff
changeset
|
236 note: merging 3b08d01b0ab5+ and adfe50279922 using bids from ancestors 0f6b37dbe527 and 40663881a6dd |
21128
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
237 |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
238 calculating bids for ancestor 0f6b37dbe527 |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
239 searching for copies back to rev 3 |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
240 resolving manifests |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
241 branchmerge: True, force: False, partial: False |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
242 ancestor: 0f6b37dbe527, local: 3b08d01b0ab5+, remote: adfe50279922 |
21269
fa601c4e03f9
merge: make debug output slightly more helpful by including message for action
Mads Kiilerich <madski@unity3d.com>
parents:
21172
diff
changeset
|
243 f1: remote is newer -> g |
fa601c4e03f9
merge: make debug output slightly more helpful by including message for action
Mads Kiilerich <madski@unity3d.com>
parents:
21172
diff
changeset
|
244 f2: versions differ -> m |
21128
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
245 |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
246 calculating bids for ancestor 40663881a6dd |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
247 searching for copies back to rev 3 |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
248 resolving manifests |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
249 branchmerge: True, force: False, partial: False |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
250 ancestor: 40663881a6dd, local: 3b08d01b0ab5+, remote: adfe50279922 |
23638
09be050ca98c
merge: let bid merge work on the file->action dict
Martin von Zweigbergk <martinvonz@google.com>
parents:
23482
diff
changeset
|
251 f1: versions differ -> m |
23482
208ec8ca7c79
merge: make 'keep' message more descriptive
Martin von Zweigbergk <martinvonz@google.com>
parents:
22673
diff
changeset
|
252 f2: remote unchanged -> k |
21128
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
253 |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
254 auction for merging merge bids |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
255 f1: picking 'get' action |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
256 f2: picking 'keep' action |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
257 end of auction |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
258 |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
259 f1: remote is newer -> g |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
260 getting f1 |
23482
208ec8ca7c79
merge: make 'keep' message more descriptive
Martin von Zweigbergk <martinvonz@google.com>
parents:
22673
diff
changeset
|
261 f2: remote unchanged -> k |
21128
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
262 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
263 (branch merge, don't forget to commit) |
f4014f646f71
merge: with merge.preferancestor=*, run an auction with bids from ancestors
Mads Kiilerich <madski@unity3d.com>
parents:
21126
diff
changeset
|
264 |
20636
12580e04cc43
tests: add test case for criss cross merge
Mads Kiilerich <madski@unity3d.com>
parents:
diff
changeset
|
265 $ cd .. |
21169
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
266 |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
267 http://stackoverflow.com/questions/9350005/how-do-i-specify-a-merge-base-to-use-in-a-hg-merge/9430810 |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
268 |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
269 $ hg init ancestor-merging |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
270 $ cd ancestor-merging |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
271 $ echo a > x |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
272 $ hg commit -A -m a x |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
273 $ hg update -q 0 |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
274 $ echo b >> x |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
275 $ hg commit -m b |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
276 $ hg update -q 0 |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
277 $ echo c >> x |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
278 $ hg commit -qm c |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
279 $ hg update -q 1 |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
280 $ hg merge -q --tool internal:local 2 |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
281 $ echo c >> x |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
282 $ hg commit -m bc |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
283 $ hg update -q 2 |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
284 $ hg merge -q --tool internal:local 1 |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
285 $ echo b >> x |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
286 $ hg commit -qm cb |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
287 |
22672
19903277f035
merge: use bid merge by default (BC)
Mads Kiilerich <madski@unity3d.com>
parents:
22671
diff
changeset
|
288 $ hg merge --config merge.preferancestor='!' |
21169
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
289 note: using 70008a2163f6 as ancestor of 0d355fdef312 and 4b8b546a3eef |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
290 alternatively, use --config merge.preferancestor=b211bbc6eb3c |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
291 merging x |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
292 0 files updated, 1 files merged, 0 files removed, 0 files unresolved |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
293 (branch merge, don't forget to commit) |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
294 $ cat x |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
295 a |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
296 c |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
297 b |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
298 c |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
299 |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
300 $ hg up -qC . |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
301 |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
302 $ hg merge --config merge.preferancestor=b211bbc6eb3c |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
303 note: using b211bbc6eb3c as ancestor of 0d355fdef312 and 4b8b546a3eef |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
304 alternatively, use --config merge.preferancestor=70008a2163f6 |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
305 merging x |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
306 0 files updated, 1 files merged, 0 files removed, 0 files unresolved |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
307 (branch merge, don't forget to commit) |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
308 $ cat x |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
309 a |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
310 b |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
311 c |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
312 b |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
313 |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
314 $ hg up -qC . |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
315 |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
316 $ hg merge -v --config merge.preferancestor="*" |
21171
33737ebc6f39
merge: tell the user when we are using bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21170
diff
changeset
|
317 note: merging 0d355fdef312+ and 4b8b546a3eef using bids from ancestors 70008a2163f6 and b211bbc6eb3c |
21169
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
318 |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
319 calculating bids for ancestor 70008a2163f6 |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
320 resolving manifests |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
321 |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
322 calculating bids for ancestor b211bbc6eb3c |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
323 resolving manifests |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
324 |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
325 auction for merging merge bids |
21172
0f0059af920c
merge: improve notes for listing the bids for ambiguous merges
Mads Kiilerich <madski@unity3d.com>
parents:
21171
diff
changeset
|
326 x: multiple bids for merge action: |
0f0059af920c
merge: improve notes for listing the bids for ambiguous merges
Mads Kiilerich <madski@unity3d.com>
parents:
21171
diff
changeset
|
327 versions differ -> m |
0f0059af920c
merge: improve notes for listing the bids for ambiguous merges
Mads Kiilerich <madski@unity3d.com>
parents:
21171
diff
changeset
|
328 versions differ -> m |
21170
ea3972243320
merge: fix stray character in bid merge message
Mads Kiilerich <madski@unity3d.com>
parents:
21169
diff
changeset
|
329 x: ambiguous merge - picked m action |
21169
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
330 end of auction |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
331 |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
332 merging x |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
333 0 files updated, 1 files merged, 0 files removed, 0 files unresolved |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
334 (branch merge, don't forget to commit) |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
335 $ cat x |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
336 a |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
337 c |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
338 b |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
339 c |
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
340 |
22180
17011b36aac7
changectx: ancestor should only prefer merge.preferancestor if it is a revision
Mads Kiilerich <madski@unity3d.com>
parents:
22179
diff
changeset
|
341 Verify that the old context ancestor works with / despite preferancestor: |
17011b36aac7
changectx: ancestor should only prefer merge.preferancestor if it is a revision
Mads Kiilerich <madski@unity3d.com>
parents:
22179
diff
changeset
|
342 |
17011b36aac7
changectx: ancestor should only prefer merge.preferancestor if it is a revision
Mads Kiilerich <madski@unity3d.com>
parents:
22179
diff
changeset
|
343 $ hg log -r 'ancestor(head())' --config merge.preferancestor=1 -T '{rev}\n' |
17011b36aac7
changectx: ancestor should only prefer merge.preferancestor if it is a revision
Mads Kiilerich <madski@unity3d.com>
parents:
22179
diff
changeset
|
344 1 |
17011b36aac7
changectx: ancestor should only prefer merge.preferancestor if it is a revision
Mads Kiilerich <madski@unity3d.com>
parents:
22179
diff
changeset
|
345 $ hg log -r 'ancestor(head())' --config merge.preferancestor=2 -T '{rev}\n' |
17011b36aac7
changectx: ancestor should only prefer merge.preferancestor if it is a revision
Mads Kiilerich <madski@unity3d.com>
parents:
22179
diff
changeset
|
346 2 |
17011b36aac7
changectx: ancestor should only prefer merge.preferancestor if it is a revision
Mads Kiilerich <madski@unity3d.com>
parents:
22179
diff
changeset
|
347 $ hg log -r 'ancestor(head())' --config merge.preferancestor=3 -T '{rev}\n' |
17011b36aac7
changectx: ancestor should only prefer merge.preferancestor if it is a revision
Mads Kiilerich <madski@unity3d.com>
parents:
22179
diff
changeset
|
348 1 |
22671
5220c12c43fd
changectx: skip all invalid merge.preferancestor values
Mads Kiilerich <madski@unity3d.com>
parents:
22180
diff
changeset
|
349 $ hg log -r 'ancestor(head())' --config merge.preferancestor='1337 * - 2' -T '{rev}\n' |
5220c12c43fd
changectx: skip all invalid merge.preferancestor values
Mads Kiilerich <madski@unity3d.com>
parents:
22180
diff
changeset
|
350 2 |
22180
17011b36aac7
changectx: ancestor should only prefer merge.preferancestor if it is a revision
Mads Kiilerich <madski@unity3d.com>
parents:
22179
diff
changeset
|
351 |
21169
b743077db69a
tests: better test coverage for bid merge
Mads Kiilerich <madski@unity3d.com>
parents:
21128
diff
changeset
|
352 $ cd .. |