Mercurial > hg
annotate tests/test-merge-types.t @ 47010:76ae43d5b1db stable
repoview: fix memory leak of filtered repo classes
The leak occurs in long-running server processes with
extensions, and is measured at 110kB per request.
Before this change, the contents of the `_filteredrepotypes`
cache are not properly garbage collected, despite it begin
a `WeakKeyDictionary`.
Extensions have a tendency to generate a new repository class
for each `localrepo` instantiation. Server processes based
on `hgwebdir_mod` will instantiate a new `localrepo` for each
HTTP request that involves a repository.
As a result, with a testing process that repeatedly opens a
repository with several extensions activated
(`topic` notably among them), we see a steady increase in
resident memory of 110kB per repository instantiation before this
change. This is also true, if we call `gc.collect()` at each
instantiation, like `hgwebdir_mod` does, or not.
The cause of the leak is that the *values* aren't weak references.
This change uses `weakref.ref` for the values, and this makes
in our measurements the resident size increase drop to 5kB per
repository instantiation, with no explicit call of `gc.collect()`
at all.
There is currently no reason to believe that this remaining leak
of 5kB is related to or even due to Mercurial core.
We've also seen evidence that `ui.ui` instances weren't properly
garbage collected before the change (with the change, they are).
This could explain why the figures are relatively high.
In theory, the collection of weak references could lead to
much more misses in the cache, so we measured the impact on
the original case that was motivation for introducing that cache
in 7e89bd0cfb86 (see also issue5043): `hg convert` of the
mozilla-central repository. The bad news here is that there is a
major memory leak there, both with and without the present changeset.
There were no more cache misses, and we could see no
more memory leak with this change: the resident size after importing
roughly 100000 changesets was at 12.4GB before, and 12.5GB after.
The small increase is mentioned for completeness only, and we
believe that it should be ignored, at least as long as the main
leak isn't fixed. At less than 1% of the main leak, even finding out
whether it is merely noise would be wasteful.
Original context where this was spotted and first mitigated:
https://foss.heptapod.net/heptapod/heptapod/-/issues/466
The leak reduction was also obtained in Heptapod inner HTTP server,
which amounts to the same as `hgwebdir_mod` for these questions.
The measurements done with Python 3.9, similar figures seen with 3.8.
More work on our side would be needed to give measurements with 2.7,
because of testing server process does not support it.
author | Georges Racinet <georges.racinet@octobus.net> |
---|---|
date | Fri, 23 Apr 2021 18:30:53 +0200 |
parents | 4764e8436b2a |
children | b7fde9237c92 |
rev | line source |
---|---|
22046
7a9cbb315d84
tests: replace exit 80 with #require
Matt Mackall <mpm@selenic.com>
parents:
21947
diff
changeset
|
1 #require symlink execbit |
15441
e0348815e806
tests: use 'hghave symlink' for tests using symlinks
Mads Kiilerich <mads@kiilerich.com>
parents:
12279
diff
changeset
|
2 |
18337
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
3 $ tellmeabout() { |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
4 > if [ -h $1 ]; then |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
5 > echo $1 is a symlink: |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
6 > $TESTDIR/readlink.py $1 |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
7 > elif [ -x $1 ]; then |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
8 > echo $1 is an executable file with content: |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
9 > cat $1 |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
10 > else |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
11 > echo $1 is a plain file with content: |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
12 > cat $1 |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
13 > fi |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
14 > } |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
15 |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
16 $ hg init test1 |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
17 $ cd test1 |
5503
6f26c7677463
Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff
changeset
|
18 |
12279 | 19 $ echo a > a |
18337
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
20 $ hg ci -Aqmadd |
12279 | 21 $ chmod +x a |
22 $ hg ci -mexecutable | |
5503
6f26c7677463
Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff
changeset
|
23 |
18337
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
24 $ hg up -q 0 |
12279 | 25 $ rm a |
26 $ ln -s symlink a | |
27 $ hg ci -msymlink | |
28 created new head | |
5503
6f26c7677463
Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff
changeset
|
29 |
18337
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
30 Symlink is local parent, executable is other: |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
31 |
12279 | 32 $ hg merge --debug |
33 resolving manifests | |
18605
bcf29565d89f
manifestmerge: pass in branchmerge and force separately
Siddharth Agarwal <sid0@fb.com>
parents:
18541
diff
changeset
|
34 branchmerge: True, force: False, partial: False |
15625
efdcce3fd2d5
merge: make debug output easier to read
Martin Geisler <mg@aragost.com>
parents:
15442
diff
changeset
|
35 ancestor: c334dc3be0da, local: 521a1e40188f+, remote: 3574f3e69b1c |
21391
cb15835456cb
merge: change debug logging - test output changes but no real changes
Mads Kiilerich <madski@unity3d.com>
parents:
21267
diff
changeset
|
36 preserving a for resolve of a |
26618
8e6d5b7317e6
merge.mergestate: perform all premerges before any merges (BC)
Siddharth Agarwal <sid0@fb.com>
parents:
26614
diff
changeset
|
37 a: versions differ -> m (premerge) |
40471
844a40687d83
test: remove changes preparing the drop of `HGMERGE`
Boris Feld <boris.feld@octobus.net>
parents:
40467
diff
changeset
|
38 tool internal:merge (for pattern a) can't handle symlinks |
40467
ee17af097257
test: drop usage of `HGMERGE` in `test-merge-types.t`
Boris Feld <boris.feld@octobus.net>
parents:
35704
diff
changeset
|
39 couldn't find merge tool hgmerge |
ee17af097257
test: drop usage of `HGMERGE` in `test-merge-types.t`
Boris Feld <boris.feld@octobus.net>
parents:
35704
diff
changeset
|
40 no tool found to merge a |
ee17af097257
test: drop usage of `HGMERGE` in `test-merge-types.t`
Boris Feld <boris.feld@octobus.net>
parents:
35704
diff
changeset
|
41 picked tool ':prompt' for a (binary False symlink True changedelete False) |
42565
4764e8436b2a
filemerge: make last line of prompts <40 english chars (issue6158)
Kyle Lippincott <spectral@google.com>
parents:
42167
diff
changeset
|
42 file 'a' needs to be resolved. |
4764e8436b2a
filemerge: make last line of prompts <40 english chars (issue6158)
Kyle Lippincott <spectral@google.com>
parents:
42167
diff
changeset
|
43 You can keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved. |
4764e8436b2a
filemerge: make last line of prompts <40 english chars (issue6158)
Kyle Lippincott <spectral@google.com>
parents:
42167
diff
changeset
|
44 What do you want to do? u |
18338
384df4db6520
merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents:
18337
diff
changeset
|
45 0 files updated, 0 files merged, 0 files removed, 1 files unresolved |
35704
41ef02ba329b
merge: add `--abort` flag which can abort the merge
Pulkit Goyal <7895pulkit@gmail.com>
parents:
32698
diff
changeset
|
46 use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon |
18338
384df4db6520
merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents:
18337
diff
changeset
|
47 [1] |
5503
6f26c7677463
Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff
changeset
|
48 |
18337
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
49 $ tellmeabout a |
18338
384df4db6520
merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents:
18337
diff
changeset
|
50 a is a symlink: |
384df4db6520
merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents:
18337
diff
changeset
|
51 a -> symlink |
384df4db6520
merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents:
18337
diff
changeset
|
52 $ hg resolve a --tool internal:other |
21947
b081decd9062
resolve: add parenthesis around "no more unresolved files" message
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
21693
diff
changeset
|
53 (no more unresolved files) |
18338
384df4db6520
merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents:
18337
diff
changeset
|
54 $ tellmeabout a |
384df4db6520
merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents:
18337
diff
changeset
|
55 a is an executable file with content: |
384df4db6520
merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents:
18337
diff
changeset
|
56 a |
384df4db6520
merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents:
18337
diff
changeset
|
57 $ hg st |
384df4db6520
merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents:
18337
diff
changeset
|
58 M a |
384df4db6520
merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents:
18337
diff
changeset
|
59 ? a.orig |
5503
6f26c7677463
Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff
changeset
|
60 |
18337
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
61 Symlink is other parent, executable is local: |
12279 | 62 |
63 $ hg update -C 1 | |
64 1 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
5503
6f26c7677463
Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff
changeset
|
65 |
26518
a77679d0b887
filemerge: print correct name of tool for symlink checks
Siddharth Agarwal <sid0@fb.com>
parents:
26517
diff
changeset
|
66 $ hg merge --debug --tool :union |
12279 | 67 resolving manifests |
18605
bcf29565d89f
manifestmerge: pass in branchmerge and force separately
Siddharth Agarwal <sid0@fb.com>
parents:
18541
diff
changeset
|
68 branchmerge: True, force: False, partial: False |
15625
efdcce3fd2d5
merge: make debug output easier to read
Martin Geisler <mg@aragost.com>
parents:
15442
diff
changeset
|
69 ancestor: c334dc3be0da, local: 3574f3e69b1c+, remote: 521a1e40188f |
21391
cb15835456cb
merge: change debug logging - test output changes but no real changes
Mads Kiilerich <madski@unity3d.com>
parents:
21267
diff
changeset
|
70 preserving a for resolve of a |
26618
8e6d5b7317e6
merge.mergestate: perform all premerges before any merges (BC)
Siddharth Agarwal <sid0@fb.com>
parents:
26614
diff
changeset
|
71 a: versions differ -> m (premerge) |
27161
296d55def9c4
filemerge: add debug output for whether this is a change/delete conflict
Siddharth Agarwal <sid0@fb.com>
parents:
26967
diff
changeset
|
72 picked tool ':union' for a (binary False symlink True changedelete False) |
18338
384df4db6520
merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents:
18337
diff
changeset
|
73 merging a |
384df4db6520
merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents:
18337
diff
changeset
|
74 my a@3574f3e69b1c+ other a@521a1e40188f ancestor a@c334dc3be0da |
26518
a77679d0b887
filemerge: print correct name of tool for symlink checks
Siddharth Agarwal <sid0@fb.com>
parents:
26517
diff
changeset
|
75 warning: internal :union cannot merge symlinks for a |
26614
ef1eb6df7071
simplemerge: move conflict warning message to filemerge
Siddharth Agarwal <sid0@fb.com>
parents:
26519
diff
changeset
|
76 warning: conflicts while merging a! (edit, then use 'hg resolve --mark') |
18338
384df4db6520
merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents:
18337
diff
changeset
|
77 0 files updated, 0 files merged, 0 files removed, 1 files unresolved |
35704
41ef02ba329b
merge: add `--abort` flag which can abort the merge
Pulkit Goyal <7895pulkit@gmail.com>
parents:
32698
diff
changeset
|
78 use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon |
18338
384df4db6520
merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents:
18337
diff
changeset
|
79 [1] |
5503
6f26c7677463
Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff
changeset
|
80 |
18337
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
81 $ tellmeabout a |
18338
384df4db6520
merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents:
18337
diff
changeset
|
82 a is an executable file with content: |
384df4db6520
merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents:
18337
diff
changeset
|
83 a |
12279 | 84 |
26519
48476c6129a2
filemerge: run symlink check for :merge3
Siddharth Agarwal <sid0@fb.com>
parents:
26518
diff
changeset
|
85 $ hg update -C 1 |
48476c6129a2
filemerge: run symlink check for :merge3
Siddharth Agarwal <sid0@fb.com>
parents:
26518
diff
changeset
|
86 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
48476c6129a2
filemerge: run symlink check for :merge3
Siddharth Agarwal <sid0@fb.com>
parents:
26518
diff
changeset
|
87 |
48476c6129a2
filemerge: run symlink check for :merge3
Siddharth Agarwal <sid0@fb.com>
parents:
26518
diff
changeset
|
88 $ hg merge --debug --tool :merge3 |
48476c6129a2
filemerge: run symlink check for :merge3
Siddharth Agarwal <sid0@fb.com>
parents:
26518
diff
changeset
|
89 resolving manifests |
48476c6129a2
filemerge: run symlink check for :merge3
Siddharth Agarwal <sid0@fb.com>
parents:
26518
diff
changeset
|
90 branchmerge: True, force: False, partial: False |
48476c6129a2
filemerge: run symlink check for :merge3
Siddharth Agarwal <sid0@fb.com>
parents:
26518
diff
changeset
|
91 ancestor: c334dc3be0da, local: 3574f3e69b1c+, remote: 521a1e40188f |
48476c6129a2
filemerge: run symlink check for :merge3
Siddharth Agarwal <sid0@fb.com>
parents:
26518
diff
changeset
|
92 preserving a for resolve of a |
26618
8e6d5b7317e6
merge.mergestate: perform all premerges before any merges (BC)
Siddharth Agarwal <sid0@fb.com>
parents:
26614
diff
changeset
|
93 a: versions differ -> m (premerge) |
27161
296d55def9c4
filemerge: add debug output for whether this is a change/delete conflict
Siddharth Agarwal <sid0@fb.com>
parents:
26967
diff
changeset
|
94 picked tool ':merge3' for a (binary False symlink True changedelete False) |
26519
48476c6129a2
filemerge: run symlink check for :merge3
Siddharth Agarwal <sid0@fb.com>
parents:
26518
diff
changeset
|
95 merging a |
48476c6129a2
filemerge: run symlink check for :merge3
Siddharth Agarwal <sid0@fb.com>
parents:
26518
diff
changeset
|
96 my a@3574f3e69b1c+ other a@521a1e40188f ancestor a@c334dc3be0da |
48476c6129a2
filemerge: run symlink check for :merge3
Siddharth Agarwal <sid0@fb.com>
parents:
26518
diff
changeset
|
97 warning: internal :merge3 cannot merge symlinks for a |
26614
ef1eb6df7071
simplemerge: move conflict warning message to filemerge
Siddharth Agarwal <sid0@fb.com>
parents:
26519
diff
changeset
|
98 warning: conflicts while merging a! (edit, then use 'hg resolve --mark') |
26519
48476c6129a2
filemerge: run symlink check for :merge3
Siddharth Agarwal <sid0@fb.com>
parents:
26518
diff
changeset
|
99 0 files updated, 0 files merged, 0 files removed, 1 files unresolved |
35704
41ef02ba329b
merge: add `--abort` flag which can abort the merge
Pulkit Goyal <7895pulkit@gmail.com>
parents:
32698
diff
changeset
|
100 use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon |
26519
48476c6129a2
filemerge: run symlink check for :merge3
Siddharth Agarwal <sid0@fb.com>
parents:
26518
diff
changeset
|
101 [1] |
48476c6129a2
filemerge: run symlink check for :merge3
Siddharth Agarwal <sid0@fb.com>
parents:
26518
diff
changeset
|
102 |
48476c6129a2
filemerge: run symlink check for :merge3
Siddharth Agarwal <sid0@fb.com>
parents:
26518
diff
changeset
|
103 $ tellmeabout a |
48476c6129a2
filemerge: run symlink check for :merge3
Siddharth Agarwal <sid0@fb.com>
parents:
26518
diff
changeset
|
104 a is an executable file with content: |
48476c6129a2
filemerge: run symlink check for :merge3
Siddharth Agarwal <sid0@fb.com>
parents:
26518
diff
changeset
|
105 a |
48476c6129a2
filemerge: run symlink check for :merge3
Siddharth Agarwal <sid0@fb.com>
parents:
26518
diff
changeset
|
106 |
26892
4b966aaadc45
test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents:
26618
diff
changeset
|
107 $ hg update -C 1 |
4b966aaadc45
test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents:
26618
diff
changeset
|
108 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
4b966aaadc45
test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents:
26618
diff
changeset
|
109 |
4b966aaadc45
test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents:
26618
diff
changeset
|
110 $ hg merge --debug --tool :merge-local |
4b966aaadc45
test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents:
26618
diff
changeset
|
111 resolving manifests |
4b966aaadc45
test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents:
26618
diff
changeset
|
112 branchmerge: True, force: False, partial: False |
4b966aaadc45
test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents:
26618
diff
changeset
|
113 ancestor: c334dc3be0da, local: 3574f3e69b1c+, remote: 521a1e40188f |
4b966aaadc45
test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents:
26618
diff
changeset
|
114 preserving a for resolve of a |
4b966aaadc45
test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents:
26618
diff
changeset
|
115 a: versions differ -> m (premerge) |
27161
296d55def9c4
filemerge: add debug output for whether this is a change/delete conflict
Siddharth Agarwal <sid0@fb.com>
parents:
26967
diff
changeset
|
116 picked tool ':merge-local' for a (binary False symlink True changedelete False) |
26892
4b966aaadc45
test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents:
26618
diff
changeset
|
117 merging a |
4b966aaadc45
test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents:
26618
diff
changeset
|
118 my a@3574f3e69b1c+ other a@521a1e40188f ancestor a@c334dc3be0da |
26893
19c4b93cb7d6
filemerge: move :merge-local/other symlink check to precheck
Siddharth Agarwal <sid0@fb.com>
parents:
26892
diff
changeset
|
119 warning: internal :merge-local cannot merge symlinks for a |
26892
4b966aaadc45
test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents:
26618
diff
changeset
|
120 0 files updated, 0 files merged, 0 files removed, 1 files unresolved |
35704
41ef02ba329b
merge: add `--abort` flag which can abort the merge
Pulkit Goyal <7895pulkit@gmail.com>
parents:
32698
diff
changeset
|
121 use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon |
26892
4b966aaadc45
test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents:
26618
diff
changeset
|
122 [1] |
4b966aaadc45
test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents:
26618
diff
changeset
|
123 |
4b966aaadc45
test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents:
26618
diff
changeset
|
124 $ tellmeabout a |
4b966aaadc45
test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents:
26618
diff
changeset
|
125 a is an executable file with content: |
4b966aaadc45
test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents:
26618
diff
changeset
|
126 a |
4b966aaadc45
test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents:
26618
diff
changeset
|
127 |
4b966aaadc45
test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents:
26618
diff
changeset
|
128 $ hg update -C 1 |
4b966aaadc45
test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents:
26618
diff
changeset
|
129 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
4b966aaadc45
test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents:
26618
diff
changeset
|
130 |
4b966aaadc45
test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents:
26618
diff
changeset
|
131 $ hg merge --debug --tool :merge-other |
4b966aaadc45
test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents:
26618
diff
changeset
|
132 resolving manifests |
4b966aaadc45
test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents:
26618
diff
changeset
|
133 branchmerge: True, force: False, partial: False |
4b966aaadc45
test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents:
26618
diff
changeset
|
134 ancestor: c334dc3be0da, local: 3574f3e69b1c+, remote: 521a1e40188f |
4b966aaadc45
test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents:
26618
diff
changeset
|
135 preserving a for resolve of a |
4b966aaadc45
test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents:
26618
diff
changeset
|
136 a: versions differ -> m (premerge) |
27161
296d55def9c4
filemerge: add debug output for whether this is a change/delete conflict
Siddharth Agarwal <sid0@fb.com>
parents:
26967
diff
changeset
|
137 picked tool ':merge-other' for a (binary False symlink True changedelete False) |
26892
4b966aaadc45
test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents:
26618
diff
changeset
|
138 merging a |
4b966aaadc45
test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents:
26618
diff
changeset
|
139 my a@3574f3e69b1c+ other a@521a1e40188f ancestor a@c334dc3be0da |
26893
19c4b93cb7d6
filemerge: move :merge-local/other symlink check to precheck
Siddharth Agarwal <sid0@fb.com>
parents:
26892
diff
changeset
|
140 warning: internal :merge-other cannot merge symlinks for a |
26892
4b966aaadc45
test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents:
26618
diff
changeset
|
141 0 files updated, 0 files merged, 0 files removed, 1 files unresolved |
35704
41ef02ba329b
merge: add `--abort` flag which can abort the merge
Pulkit Goyal <7895pulkit@gmail.com>
parents:
32698
diff
changeset
|
142 use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon |
26892
4b966aaadc45
test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents:
26618
diff
changeset
|
143 [1] |
4b966aaadc45
test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents:
26618
diff
changeset
|
144 |
4b966aaadc45
test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents:
26618
diff
changeset
|
145 $ tellmeabout a |
4b966aaadc45
test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents:
26618
diff
changeset
|
146 a is an executable file with content: |
4b966aaadc45
test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents:
26618
diff
changeset
|
147 a |
4b966aaadc45
test-merge-types.t: add tests for :merge-local/:merge-other with symlinks
Siddharth Agarwal <sid0@fb.com>
parents:
26618
diff
changeset
|
148 |
16255
ca5cc2976574
merge: handle linear update to symlink correctly (issue3316)
Matt Mackall <mpm@selenic.com>
parents:
15625
diff
changeset
|
149 Update to link without local change should get us a symlink (issue3316): |
ca5cc2976574
merge: handle linear update to symlink correctly (issue3316)
Matt Mackall <mpm@selenic.com>
parents:
15625
diff
changeset
|
150 |
17110
722fd97f6645
tests: fix test markup in test-merge-types.t
Mads Kiilerich <mads@kiilerich.com>
parents:
16355
diff
changeset
|
151 $ hg up -C 0 |
722fd97f6645
tests: fix test markup in test-merge-types.t
Mads Kiilerich <mads@kiilerich.com>
parents:
16355
diff
changeset
|
152 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
722fd97f6645
tests: fix test markup in test-merge-types.t
Mads Kiilerich <mads@kiilerich.com>
parents:
16355
diff
changeset
|
153 $ hg up |
722fd97f6645
tests: fix test markup in test-merge-types.t
Mads Kiilerich <mads@kiilerich.com>
parents:
16355
diff
changeset
|
154 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
32698
1b5c61d38a52
update: show the commit to which we updated in case of multiple heads (BC)
Pulkit Goyal <7895pulkit@gmail.com>
parents:
32253
diff
changeset
|
155 updated to "521a1e40188f: symlink" |
28029
72072cfc7e91
update: warn about other topological heads on bare update
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
27164
diff
changeset
|
156 1 other heads for branch "default" |
17110
722fd97f6645
tests: fix test markup in test-merge-types.t
Mads Kiilerich <mads@kiilerich.com>
parents:
16355
diff
changeset
|
157 $ hg st |
18338
384df4db6520
merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents:
18337
diff
changeset
|
158 ? a.orig |
16255
ca5cc2976574
merge: handle linear update to symlink correctly (issue3316)
Matt Mackall <mpm@selenic.com>
parents:
15625
diff
changeset
|
159 |
ca5cc2976574
merge: handle linear update to symlink correctly (issue3316)
Matt Mackall <mpm@selenic.com>
parents:
15625
diff
changeset
|
160 Update to link with local change should cause a merge prompt (issue3200): |
ca5cc2976574
merge: handle linear update to symlink correctly (issue3316)
Matt Mackall <mpm@selenic.com>
parents:
15625
diff
changeset
|
161 |
18337
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
162 $ hg up -Cq 0 |
16255
ca5cc2976574
merge: handle linear update to symlink correctly (issue3316)
Matt Mackall <mpm@selenic.com>
parents:
15625
diff
changeset
|
163 $ echo data > a |
40467
ee17af097257
test: drop usage of `HGMERGE` in `test-merge-types.t`
Boris Feld <boris.feld@octobus.net>
parents:
35704
diff
changeset
|
164 $ HGMERGE= hg up -y --debug --config ui.merge= |
16255
ca5cc2976574
merge: handle linear update to symlink correctly (issue3316)
Matt Mackall <mpm@selenic.com>
parents:
15625
diff
changeset
|
165 resolving manifests |
18605
bcf29565d89f
manifestmerge: pass in branchmerge and force separately
Siddharth Agarwal <sid0@fb.com>
parents:
18541
diff
changeset
|
166 branchmerge: False, force: False, partial: False |
16255
ca5cc2976574
merge: handle linear update to symlink correctly (issue3316)
Matt Mackall <mpm@selenic.com>
parents:
15625
diff
changeset
|
167 ancestor: c334dc3be0da, local: c334dc3be0da+, remote: 521a1e40188f |
21391
cb15835456cb
merge: change debug logging - test output changes but no real changes
Mads Kiilerich <madski@unity3d.com>
parents:
21267
diff
changeset
|
168 preserving a for resolve of a |
26618
8e6d5b7317e6
merge.mergestate: perform all premerges before any merges (BC)
Siddharth Agarwal <sid0@fb.com>
parents:
26614
diff
changeset
|
169 a: versions differ -> m (premerge) |
16355
cb1475e7e5a2
test-merge-types: allow different output with existing hgmerge (issue3346)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
16255
diff
changeset
|
170 (couldn't find merge tool hgmerge|tool hgmerge can't handle symlinks) (re) |
32253
7d4ce4b567c5
filemerge: show warning about choice of :prompt only at an actual fallback
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
30460
diff
changeset
|
171 no tool found to merge a |
27161
296d55def9c4
filemerge: add debug output for whether this is a change/delete conflict
Siddharth Agarwal <sid0@fb.com>
parents:
26967
diff
changeset
|
172 picked tool ':prompt' for a (binary False symlink True changedelete False) |
42565
4764e8436b2a
filemerge: make last line of prompts <40 english chars (issue6158)
Kyle Lippincott <spectral@google.com>
parents:
42167
diff
changeset
|
173 file 'a' needs to be resolved. |
4764e8436b2a
filemerge: make last line of prompts <40 english chars (issue6158)
Kyle Lippincott <spectral@google.com>
parents:
42167
diff
changeset
|
174 You can keep (l)ocal [working copy], take (o)ther [destination], or leave (u)nresolved. |
4764e8436b2a
filemerge: make last line of prompts <40 english chars (issue6158)
Kyle Lippincott <spectral@google.com>
parents:
42167
diff
changeset
|
175 What do you want to do? u |
27164
88d5db4b155c
filemerge: default regular prompts to 'leave unresolved' (BC)
Siddharth Agarwal <sid0@fb.com>
parents:
27162
diff
changeset
|
176 0 files updated, 0 files merged, 0 files removed, 1 files unresolved |
88d5db4b155c
filemerge: default regular prompts to 'leave unresolved' (BC)
Siddharth Agarwal <sid0@fb.com>
parents:
27162
diff
changeset
|
177 use 'hg resolve' to retry unresolved file merges |
32698
1b5c61d38a52
update: show the commit to which we updated in case of multiple heads (BC)
Pulkit Goyal <7895pulkit@gmail.com>
parents:
32253
diff
changeset
|
178 updated to "521a1e40188f: symlink" |
28029
72072cfc7e91
update: warn about other topological heads on bare update
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
27164
diff
changeset
|
179 1 other heads for branch "default" |
27164
88d5db4b155c
filemerge: default regular prompts to 'leave unresolved' (BC)
Siddharth Agarwal <sid0@fb.com>
parents:
27162
diff
changeset
|
180 [1] |
16255
ca5cc2976574
merge: handle linear update to symlink correctly (issue3316)
Matt Mackall <mpm@selenic.com>
parents:
15625
diff
changeset
|
181 $ hg diff --git |
ca5cc2976574
merge: handle linear update to symlink correctly (issue3316)
Matt Mackall <mpm@selenic.com>
parents:
15625
diff
changeset
|
182 diff --git a/a b/a |
ca5cc2976574
merge: handle linear update to symlink correctly (issue3316)
Matt Mackall <mpm@selenic.com>
parents:
15625
diff
changeset
|
183 old mode 120000 |
ca5cc2976574
merge: handle linear update to symlink correctly (issue3316)
Matt Mackall <mpm@selenic.com>
parents:
15625
diff
changeset
|
184 new mode 100644 |
ca5cc2976574
merge: handle linear update to symlink correctly (issue3316)
Matt Mackall <mpm@selenic.com>
parents:
15625
diff
changeset
|
185 --- a/a |
ca5cc2976574
merge: handle linear update to symlink correctly (issue3316)
Matt Mackall <mpm@selenic.com>
parents:
15625
diff
changeset
|
186 +++ b/a |
ca5cc2976574
merge: handle linear update to symlink correctly (issue3316)
Matt Mackall <mpm@selenic.com>
parents:
15625
diff
changeset
|
187 @@ -1,1 +1,1 @@ |
ca5cc2976574
merge: handle linear update to symlink correctly (issue3316)
Matt Mackall <mpm@selenic.com>
parents:
15625
diff
changeset
|
188 -symlink |
ca5cc2976574
merge: handle linear update to symlink correctly (issue3316)
Matt Mackall <mpm@selenic.com>
parents:
15625
diff
changeset
|
189 \ No newline at end of file |
ca5cc2976574
merge: handle linear update to symlink correctly (issue3316)
Matt Mackall <mpm@selenic.com>
parents:
15625
diff
changeset
|
190 +data |
ca5cc2976574
merge: handle linear update to symlink correctly (issue3316)
Matt Mackall <mpm@selenic.com>
parents:
15625
diff
changeset
|
191 |
ca5cc2976574
merge: handle linear update to symlink correctly (issue3316)
Matt Mackall <mpm@selenic.com>
parents:
15625
diff
changeset
|
192 |
18337
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
193 Test only 'l' change - happens rarely, except when recovering from situations |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
194 where that was what happened. |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
195 |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
196 $ hg init test2 |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
197 $ cd test2 |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
198 $ printf base > f |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
199 $ hg ci -Aqm0 |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
200 $ echo file > f |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
201 $ echo content >> f |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
202 $ hg ci -qm1 |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
203 $ hg up -qr0 |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
204 $ rm f |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
205 $ ln -s base f |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
206 $ hg ci -qm2 |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
207 $ hg merge |
40471
844a40687d83
test: remove changes preparing the drop of `HGMERGE`
Boris Feld <boris.feld@octobus.net>
parents:
40467
diff
changeset
|
208 tool internal:merge (for pattern f) can't handle symlinks |
40467
ee17af097257
test: drop usage of `HGMERGE` in `test-merge-types.t`
Boris Feld <boris.feld@octobus.net>
parents:
35704
diff
changeset
|
209 no tool found to merge f |
42565
4764e8436b2a
filemerge: make last line of prompts <40 english chars (issue6158)
Kyle Lippincott <spectral@google.com>
parents:
42167
diff
changeset
|
210 file 'f' needs to be resolved. |
4764e8436b2a
filemerge: make last line of prompts <40 english chars (issue6158)
Kyle Lippincott <spectral@google.com>
parents:
42167
diff
changeset
|
211 You can keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved. |
4764e8436b2a
filemerge: make last line of prompts <40 english chars (issue6158)
Kyle Lippincott <spectral@google.com>
parents:
42167
diff
changeset
|
212 What do you want to do? u |
18338
384df4db6520
merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents:
18337
diff
changeset
|
213 0 files updated, 0 files merged, 0 files removed, 1 files unresolved |
35704
41ef02ba329b
merge: add `--abort` flag which can abort the merge
Pulkit Goyal <7895pulkit@gmail.com>
parents:
32698
diff
changeset
|
214 use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon |
18338
384df4db6520
merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents:
18337
diff
changeset
|
215 [1] |
18337
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
216 $ tellmeabout f |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
217 f is a symlink: |
18338
384df4db6520
merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents:
18337
diff
changeset
|
218 f -> base |
18337
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
219 |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
220 $ hg up -Cqr1 |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
221 $ hg merge |
40471
844a40687d83
test: remove changes preparing the drop of `HGMERGE`
Boris Feld <boris.feld@octobus.net>
parents:
40467
diff
changeset
|
222 tool internal:merge (for pattern f) can't handle symlinks |
40467
ee17af097257
test: drop usage of `HGMERGE` in `test-merge-types.t`
Boris Feld <boris.feld@octobus.net>
parents:
35704
diff
changeset
|
223 no tool found to merge f |
42565
4764e8436b2a
filemerge: make last line of prompts <40 english chars (issue6158)
Kyle Lippincott <spectral@google.com>
parents:
42167
diff
changeset
|
224 file 'f' needs to be resolved. |
4764e8436b2a
filemerge: make last line of prompts <40 english chars (issue6158)
Kyle Lippincott <spectral@google.com>
parents:
42167
diff
changeset
|
225 You can keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved. |
4764e8436b2a
filemerge: make last line of prompts <40 english chars (issue6158)
Kyle Lippincott <spectral@google.com>
parents:
42167
diff
changeset
|
226 What do you want to do? u |
18338
384df4db6520
merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents:
18337
diff
changeset
|
227 0 files updated, 0 files merged, 0 files removed, 1 files unresolved |
35704
41ef02ba329b
merge: add `--abort` flag which can abort the merge
Pulkit Goyal <7895pulkit@gmail.com>
parents:
32698
diff
changeset
|
228 use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon |
18338
384df4db6520
merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents:
18337
diff
changeset
|
229 [1] |
18337
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
230 $ tellmeabout f |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
231 f is a plain file with content: |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
232 file |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
233 content |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
234 |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
235 $ cd .. |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
236 |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
237 Test removed 'x' flag merged with change to symlink |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
238 |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
239 $ hg init test3 |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
240 $ cd test3 |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
241 $ echo f > f |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
242 $ chmod +x f |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
243 $ hg ci -Aqm0 |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
244 $ chmod -x f |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
245 $ hg ci -qm1 |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
246 $ hg up -qr0 |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
247 $ rm f |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
248 $ ln -s dangling f |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
249 $ hg ci -qm2 |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
250 $ hg merge |
40471
844a40687d83
test: remove changes preparing the drop of `HGMERGE`
Boris Feld <boris.feld@octobus.net>
parents:
40467
diff
changeset
|
251 tool internal:merge (for pattern f) can't handle symlinks |
40467
ee17af097257
test: drop usage of `HGMERGE` in `test-merge-types.t`
Boris Feld <boris.feld@octobus.net>
parents:
35704
diff
changeset
|
252 no tool found to merge f |
42565
4764e8436b2a
filemerge: make last line of prompts <40 english chars (issue6158)
Kyle Lippincott <spectral@google.com>
parents:
42167
diff
changeset
|
253 file 'f' needs to be resolved. |
4764e8436b2a
filemerge: make last line of prompts <40 english chars (issue6158)
Kyle Lippincott <spectral@google.com>
parents:
42167
diff
changeset
|
254 You can keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved. |
4764e8436b2a
filemerge: make last line of prompts <40 english chars (issue6158)
Kyle Lippincott <spectral@google.com>
parents:
42167
diff
changeset
|
255 What do you want to do? u |
18338
384df4db6520
merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents:
18337
diff
changeset
|
256 0 files updated, 0 files merged, 0 files removed, 1 files unresolved |
35704
41ef02ba329b
merge: add `--abort` flag which can abort the merge
Pulkit Goyal <7895pulkit@gmail.com>
parents:
32698
diff
changeset
|
257 use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon |
18338
384df4db6520
merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents:
18337
diff
changeset
|
258 [1] |
18337
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
259 $ tellmeabout f |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
260 f is a symlink: |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
261 f -> dangling |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
262 |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
263 $ hg up -Cqr1 |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
264 $ hg merge |
40471
844a40687d83
test: remove changes preparing the drop of `HGMERGE`
Boris Feld <boris.feld@octobus.net>
parents:
40467
diff
changeset
|
265 tool internal:merge (for pattern f) can't handle symlinks |
40467
ee17af097257
test: drop usage of `HGMERGE` in `test-merge-types.t`
Boris Feld <boris.feld@octobus.net>
parents:
35704
diff
changeset
|
266 no tool found to merge f |
42565
4764e8436b2a
filemerge: make last line of prompts <40 english chars (issue6158)
Kyle Lippincott <spectral@google.com>
parents:
42167
diff
changeset
|
267 file 'f' needs to be resolved. |
4764e8436b2a
filemerge: make last line of prompts <40 english chars (issue6158)
Kyle Lippincott <spectral@google.com>
parents:
42167
diff
changeset
|
268 You can keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved. |
4764e8436b2a
filemerge: make last line of prompts <40 english chars (issue6158)
Kyle Lippincott <spectral@google.com>
parents:
42167
diff
changeset
|
269 What do you want to do? u |
18338
384df4db6520
merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents:
18337
diff
changeset
|
270 0 files updated, 0 files merged, 0 files removed, 1 files unresolved |
35704
41ef02ba329b
merge: add `--abort` flag which can abort the merge
Pulkit Goyal <7895pulkit@gmail.com>
parents:
32698
diff
changeset
|
271 use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon |
18338
384df4db6520
merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents:
18337
diff
changeset
|
272 [1] |
18337
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
273 $ tellmeabout f |
18338
384df4db6520
merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents:
18337
diff
changeset
|
274 f is a plain file with content: |
384df4db6520
merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents:
18337
diff
changeset
|
275 f |
18337
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
276 |
18505
9de9727cea53
merge: fix UnboundLocalError (issue3791)
Mads Kiilerich <madski@unity3d.com>
parents:
18338
diff
changeset
|
277 Test removed 'x' flag merged with content change - both ways |
9de9727cea53
merge: fix UnboundLocalError (issue3791)
Mads Kiilerich <madski@unity3d.com>
parents:
18338
diff
changeset
|
278 |
9de9727cea53
merge: fix UnboundLocalError (issue3791)
Mads Kiilerich <madski@unity3d.com>
parents:
18338
diff
changeset
|
279 $ hg up -Cqr0 |
9de9727cea53
merge: fix UnboundLocalError (issue3791)
Mads Kiilerich <madski@unity3d.com>
parents:
18338
diff
changeset
|
280 $ echo change > f |
9de9727cea53
merge: fix UnboundLocalError (issue3791)
Mads Kiilerich <madski@unity3d.com>
parents:
18338
diff
changeset
|
281 $ hg ci -qm3 |
9de9727cea53
merge: fix UnboundLocalError (issue3791)
Mads Kiilerich <madski@unity3d.com>
parents:
18338
diff
changeset
|
282 $ hg merge -r1 |
9de9727cea53
merge: fix UnboundLocalError (issue3791)
Mads Kiilerich <madski@unity3d.com>
parents:
18338
diff
changeset
|
283 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
9de9727cea53
merge: fix UnboundLocalError (issue3791)
Mads Kiilerich <madski@unity3d.com>
parents:
18338
diff
changeset
|
284 (branch merge, don't forget to commit) |
9de9727cea53
merge: fix UnboundLocalError (issue3791)
Mads Kiilerich <madski@unity3d.com>
parents:
18338
diff
changeset
|
285 $ tellmeabout f |
9de9727cea53
merge: fix UnboundLocalError (issue3791)
Mads Kiilerich <madski@unity3d.com>
parents:
18338
diff
changeset
|
286 f is a plain file with content: |
9de9727cea53
merge: fix UnboundLocalError (issue3791)
Mads Kiilerich <madski@unity3d.com>
parents:
18338
diff
changeset
|
287 change |
9de9727cea53
merge: fix UnboundLocalError (issue3791)
Mads Kiilerich <madski@unity3d.com>
parents:
18338
diff
changeset
|
288 |
9de9727cea53
merge: fix UnboundLocalError (issue3791)
Mads Kiilerich <madski@unity3d.com>
parents:
18338
diff
changeset
|
289 $ hg up -qCr1 |
9de9727cea53
merge: fix UnboundLocalError (issue3791)
Mads Kiilerich <madski@unity3d.com>
parents:
18338
diff
changeset
|
290 $ hg merge -r3 |
9de9727cea53
merge: fix UnboundLocalError (issue3791)
Mads Kiilerich <madski@unity3d.com>
parents:
18338
diff
changeset
|
291 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
9de9727cea53
merge: fix UnboundLocalError (issue3791)
Mads Kiilerich <madski@unity3d.com>
parents:
18338
diff
changeset
|
292 (branch merge, don't forget to commit) |
9de9727cea53
merge: fix UnboundLocalError (issue3791)
Mads Kiilerich <madski@unity3d.com>
parents:
18338
diff
changeset
|
293 $ tellmeabout f |
9de9727cea53
merge: fix UnboundLocalError (issue3791)
Mads Kiilerich <madski@unity3d.com>
parents:
18338
diff
changeset
|
294 f is a plain file with content: |
9de9727cea53
merge: fix UnboundLocalError (issue3791)
Mads Kiilerich <madski@unity3d.com>
parents:
18338
diff
changeset
|
295 change |
9de9727cea53
merge: fix UnboundLocalError (issue3791)
Mads Kiilerich <madski@unity3d.com>
parents:
18338
diff
changeset
|
296 |
18337
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
297 $ cd .. |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
298 |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
299 Test merge with no common ancestor: |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
300 a: just different |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
301 b: x vs -, different (cannot calculate x, cannot ask merge tool) |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
302 c: x vs -, same (cannot calculate x, merge tool is no good) |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
303 d: x vs l, different |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
304 e: x vs l, same |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
305 f: - vs l, different |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
306 g: - vs l, same |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
307 h: l vs l, different |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
308 (where same means the filelog entry is shared and there thus is an ancestor!) |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
309 |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
310 $ hg init test4 |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
311 $ cd test4 |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
312 $ echo 0 > 0 |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
313 $ hg ci -Aqm0 |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
314 |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
315 $ echo 1 > a |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
316 $ echo 1 > b |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
317 $ chmod +x b |
30160
008c4ce64e3f
tests: add test coverage of merging x flag without ancestor
Mads Kiilerich <madski@unity3d.com>
parents:
30062
diff
changeset
|
318 $ echo 1 > bx |
008c4ce64e3f
tests: add test coverage of merging x flag without ancestor
Mads Kiilerich <madski@unity3d.com>
parents:
30062
diff
changeset
|
319 $ chmod +x bx |
18337
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
320 $ echo x > c |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
321 $ chmod +x c |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
322 $ echo 1 > d |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
323 $ chmod +x d |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
324 $ printf x > e |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
325 $ chmod +x e |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
326 $ echo 1 > f |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
327 $ printf x > g |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
328 $ ln -s 1 h |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
329 $ hg ci -qAm1 |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
330 |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
331 $ hg up -qr0 |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
332 $ echo 2 > a |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
333 $ echo 2 > b |
30160
008c4ce64e3f
tests: add test coverage of merging x flag without ancestor
Mads Kiilerich <madski@unity3d.com>
parents:
30062
diff
changeset
|
334 $ echo 2 > bx |
008c4ce64e3f
tests: add test coverage of merging x flag without ancestor
Mads Kiilerich <madski@unity3d.com>
parents:
30062
diff
changeset
|
335 $ chmod +x bx |
18337
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
336 $ echo x > c |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
337 $ ln -s 2 d |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
338 $ ln -s x e |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
339 $ ln -s 2 f |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
340 $ ln -s x g |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
341 $ ln -s 2 h |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
342 $ hg ci -Aqm2 |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
343 |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
344 $ hg merge |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
345 merging a |
30162
5cb830801855
merge: clarify warning for (not) merging flags without ancestor
Mads Kiilerich <madski@unity3d.com>
parents:
30161
diff
changeset
|
346 warning: cannot merge flags for b without common ancestor - keeping local flags |
18337
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
347 merging b |
30160
008c4ce64e3f
tests: add test coverage of merging x flag without ancestor
Mads Kiilerich <madski@unity3d.com>
parents:
30062
diff
changeset
|
348 merging bx |
30162
5cb830801855
merge: clarify warning for (not) merging flags without ancestor
Mads Kiilerich <madski@unity3d.com>
parents:
30161
diff
changeset
|
349 warning: cannot merge flags for c without common ancestor - keeping local flags |
40471
844a40687d83
test: remove changes preparing the drop of `HGMERGE`
Boris Feld <boris.feld@octobus.net>
parents:
40467
diff
changeset
|
350 tool internal:merge (for pattern d) can't handle symlinks |
40467
ee17af097257
test: drop usage of `HGMERGE` in `test-merge-types.t`
Boris Feld <boris.feld@octobus.net>
parents:
35704
diff
changeset
|
351 no tool found to merge d |
42565
4764e8436b2a
filemerge: make last line of prompts <40 english chars (issue6158)
Kyle Lippincott <spectral@google.com>
parents:
42167
diff
changeset
|
352 file 'd' needs to be resolved. |
4764e8436b2a
filemerge: make last line of prompts <40 english chars (issue6158)
Kyle Lippincott <spectral@google.com>
parents:
42167
diff
changeset
|
353 You can keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved. |
4764e8436b2a
filemerge: make last line of prompts <40 english chars (issue6158)
Kyle Lippincott <spectral@google.com>
parents:
42167
diff
changeset
|
354 What do you want to do? u |
40471
844a40687d83
test: remove changes preparing the drop of `HGMERGE`
Boris Feld <boris.feld@octobus.net>
parents:
40467
diff
changeset
|
355 tool internal:merge (for pattern f) can't handle symlinks |
40467
ee17af097257
test: drop usage of `HGMERGE` in `test-merge-types.t`
Boris Feld <boris.feld@octobus.net>
parents:
35704
diff
changeset
|
356 no tool found to merge f |
42565
4764e8436b2a
filemerge: make last line of prompts <40 english chars (issue6158)
Kyle Lippincott <spectral@google.com>
parents:
42167
diff
changeset
|
357 file 'f' needs to be resolved. |
4764e8436b2a
filemerge: make last line of prompts <40 english chars (issue6158)
Kyle Lippincott <spectral@google.com>
parents:
42167
diff
changeset
|
358 You can keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved. |
4764e8436b2a
filemerge: make last line of prompts <40 english chars (issue6158)
Kyle Lippincott <spectral@google.com>
parents:
42167
diff
changeset
|
359 What do you want to do? u |
40471
844a40687d83
test: remove changes preparing the drop of `HGMERGE`
Boris Feld <boris.feld@octobus.net>
parents:
40467
diff
changeset
|
360 tool internal:merge (for pattern h) can't handle symlinks |
40467
ee17af097257
test: drop usage of `HGMERGE` in `test-merge-types.t`
Boris Feld <boris.feld@octobus.net>
parents:
35704
diff
changeset
|
361 no tool found to merge h |
42565
4764e8436b2a
filemerge: make last line of prompts <40 english chars (issue6158)
Kyle Lippincott <spectral@google.com>
parents:
42167
diff
changeset
|
362 file 'h' needs to be resolved. |
4764e8436b2a
filemerge: make last line of prompts <40 english chars (issue6158)
Kyle Lippincott <spectral@google.com>
parents:
42167
diff
changeset
|
363 You can keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved. |
4764e8436b2a
filemerge: make last line of prompts <40 english chars (issue6158)
Kyle Lippincott <spectral@google.com>
parents:
42167
diff
changeset
|
364 What do you want to do? u |
26618
8e6d5b7317e6
merge.mergestate: perform all premerges before any merges (BC)
Siddharth Agarwal <sid0@fb.com>
parents:
26614
diff
changeset
|
365 warning: conflicts while merging a! (edit, then use 'hg resolve --mark') |
8e6d5b7317e6
merge.mergestate: perform all premerges before any merges (BC)
Siddharth Agarwal <sid0@fb.com>
parents:
26614
diff
changeset
|
366 warning: conflicts while merging b! (edit, then use 'hg resolve --mark') |
30160
008c4ce64e3f
tests: add test coverage of merging x flag without ancestor
Mads Kiilerich <madski@unity3d.com>
parents:
30062
diff
changeset
|
367 warning: conflicts while merging bx! (edit, then use 'hg resolve --mark') |
008c4ce64e3f
tests: add test coverage of merging x flag without ancestor
Mads Kiilerich <madski@unity3d.com>
parents:
30062
diff
changeset
|
368 3 files updated, 0 files merged, 0 files removed, 6 files unresolved |
35704
41ef02ba329b
merge: add `--abort` flag which can abort the merge
Pulkit Goyal <7895pulkit@gmail.com>
parents:
32698
diff
changeset
|
369 use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon |
18337
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
370 [1] |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
371 $ hg resolve -l |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
372 U a |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
373 U b |
30160
008c4ce64e3f
tests: add test coverage of merging x flag without ancestor
Mads Kiilerich <madski@unity3d.com>
parents:
30062
diff
changeset
|
374 U bx |
18337
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
375 U d |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
376 U f |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
377 U h |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
378 $ tellmeabout a |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
379 a is a plain file with content: |
30160
008c4ce64e3f
tests: add test coverage of merging x flag without ancestor
Mads Kiilerich <madski@unity3d.com>
parents:
30062
diff
changeset
|
380 <<<<<<< working copy: 0c617753b41b - test: 2 |
18337
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
381 2 |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
382 ======= |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
383 1 |
30460
ce3a133f71b3
conflicts: make spacing consistent in conflict markers
Kostia Balytskyi <ikostia@fb.com>
parents:
30162
diff
changeset
|
384 >>>>>>> merge rev: 2e60aa20b912 - test: 1 |
18337
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
385 $ tellmeabout b |
18338
384df4db6520
merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents:
18337
diff
changeset
|
386 b is a plain file with content: |
30160
008c4ce64e3f
tests: add test coverage of merging x flag without ancestor
Mads Kiilerich <madski@unity3d.com>
parents:
30062
diff
changeset
|
387 <<<<<<< working copy: 0c617753b41b - test: 2 |
18337
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
388 2 |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
389 ======= |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
390 1 |
30460
ce3a133f71b3
conflicts: make spacing consistent in conflict markers
Kostia Balytskyi <ikostia@fb.com>
parents:
30162
diff
changeset
|
391 >>>>>>> merge rev: 2e60aa20b912 - test: 1 |
18337
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
392 $ tellmeabout c |
18338
384df4db6520
merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents:
18337
diff
changeset
|
393 c is a plain file with content: |
18337
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
394 x |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
395 $ tellmeabout d |
18338
384df4db6520
merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents:
18337
diff
changeset
|
396 d is a symlink: |
384df4db6520
merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents:
18337
diff
changeset
|
397 d -> 2 |
18337
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
398 $ tellmeabout e |
18338
384df4db6520
merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents:
18337
diff
changeset
|
399 e is a symlink: |
384df4db6520
merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents:
18337
diff
changeset
|
400 e -> x |
18337
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
401 $ tellmeabout f |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
402 f is a symlink: |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
403 f -> 2 |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
404 $ tellmeabout g |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
405 g is a symlink: |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
406 g -> x |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
407 $ tellmeabout h |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
408 h is a symlink: |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
409 h -> 2 |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
410 |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
411 $ hg up -Cqr1 |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
412 $ hg merge |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
413 merging a |
30162
5cb830801855
merge: clarify warning for (not) merging flags without ancestor
Mads Kiilerich <madski@unity3d.com>
parents:
30161
diff
changeset
|
414 warning: cannot merge flags for b without common ancestor - keeping local flags |
18337
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
415 merging b |
30160
008c4ce64e3f
tests: add test coverage of merging x flag without ancestor
Mads Kiilerich <madski@unity3d.com>
parents:
30062
diff
changeset
|
416 merging bx |
30162
5cb830801855
merge: clarify warning for (not) merging flags without ancestor
Mads Kiilerich <madski@unity3d.com>
parents:
30161
diff
changeset
|
417 warning: cannot merge flags for c without common ancestor - keeping local flags |
40471
844a40687d83
test: remove changes preparing the drop of `HGMERGE`
Boris Feld <boris.feld@octobus.net>
parents:
40467
diff
changeset
|
418 tool internal:merge (for pattern d) can't handle symlinks |
40467
ee17af097257
test: drop usage of `HGMERGE` in `test-merge-types.t`
Boris Feld <boris.feld@octobus.net>
parents:
35704
diff
changeset
|
419 no tool found to merge d |
42565
4764e8436b2a
filemerge: make last line of prompts <40 english chars (issue6158)
Kyle Lippincott <spectral@google.com>
parents:
42167
diff
changeset
|
420 file 'd' needs to be resolved. |
4764e8436b2a
filemerge: make last line of prompts <40 english chars (issue6158)
Kyle Lippincott <spectral@google.com>
parents:
42167
diff
changeset
|
421 You can keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved. |
4764e8436b2a
filemerge: make last line of prompts <40 english chars (issue6158)
Kyle Lippincott <spectral@google.com>
parents:
42167
diff
changeset
|
422 What do you want to do? u |
40471
844a40687d83
test: remove changes preparing the drop of `HGMERGE`
Boris Feld <boris.feld@octobus.net>
parents:
40467
diff
changeset
|
423 tool internal:merge (for pattern f) can't handle symlinks |
40467
ee17af097257
test: drop usage of `HGMERGE` in `test-merge-types.t`
Boris Feld <boris.feld@octobus.net>
parents:
35704
diff
changeset
|
424 no tool found to merge f |
42565
4764e8436b2a
filemerge: make last line of prompts <40 english chars (issue6158)
Kyle Lippincott <spectral@google.com>
parents:
42167
diff
changeset
|
425 file 'f' needs to be resolved. |
4764e8436b2a
filemerge: make last line of prompts <40 english chars (issue6158)
Kyle Lippincott <spectral@google.com>
parents:
42167
diff
changeset
|
426 You can keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved. |
4764e8436b2a
filemerge: make last line of prompts <40 english chars (issue6158)
Kyle Lippincott <spectral@google.com>
parents:
42167
diff
changeset
|
427 What do you want to do? u |
40471
844a40687d83
test: remove changes preparing the drop of `HGMERGE`
Boris Feld <boris.feld@octobus.net>
parents:
40467
diff
changeset
|
428 tool internal:merge (for pattern h) can't handle symlinks |
40467
ee17af097257
test: drop usage of `HGMERGE` in `test-merge-types.t`
Boris Feld <boris.feld@octobus.net>
parents:
35704
diff
changeset
|
429 no tool found to merge h |
42565
4764e8436b2a
filemerge: make last line of prompts <40 english chars (issue6158)
Kyle Lippincott <spectral@google.com>
parents:
42167
diff
changeset
|
430 file 'h' needs to be resolved. |
4764e8436b2a
filemerge: make last line of prompts <40 english chars (issue6158)
Kyle Lippincott <spectral@google.com>
parents:
42167
diff
changeset
|
431 You can keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved. |
4764e8436b2a
filemerge: make last line of prompts <40 english chars (issue6158)
Kyle Lippincott <spectral@google.com>
parents:
42167
diff
changeset
|
432 What do you want to do? u |
26618
8e6d5b7317e6
merge.mergestate: perform all premerges before any merges (BC)
Siddharth Agarwal <sid0@fb.com>
parents:
26614
diff
changeset
|
433 warning: conflicts while merging a! (edit, then use 'hg resolve --mark') |
8e6d5b7317e6
merge.mergestate: perform all premerges before any merges (BC)
Siddharth Agarwal <sid0@fb.com>
parents:
26614
diff
changeset
|
434 warning: conflicts while merging b! (edit, then use 'hg resolve --mark') |
30160
008c4ce64e3f
tests: add test coverage of merging x flag without ancestor
Mads Kiilerich <madski@unity3d.com>
parents:
30062
diff
changeset
|
435 warning: conflicts while merging bx! (edit, then use 'hg resolve --mark') |
008c4ce64e3f
tests: add test coverage of merging x flag without ancestor
Mads Kiilerich <madski@unity3d.com>
parents:
30062
diff
changeset
|
436 3 files updated, 0 files merged, 0 files removed, 6 files unresolved |
35704
41ef02ba329b
merge: add `--abort` flag which can abort the merge
Pulkit Goyal <7895pulkit@gmail.com>
parents:
32698
diff
changeset
|
437 use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon |
18337
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
438 [1] |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
439 $ tellmeabout a |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
440 a is a plain file with content: |
30460
ce3a133f71b3
conflicts: make spacing consistent in conflict markers
Kostia Balytskyi <ikostia@fb.com>
parents:
30162
diff
changeset
|
441 <<<<<<< working copy: 2e60aa20b912 - test: 1 |
18337
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
442 1 |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
443 ======= |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
444 2 |
30160
008c4ce64e3f
tests: add test coverage of merging x flag without ancestor
Mads Kiilerich <madski@unity3d.com>
parents:
30062
diff
changeset
|
445 >>>>>>> merge rev: 0c617753b41b - test: 2 |
18337
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
446 $ tellmeabout b |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
447 b is an executable file with content: |
30460
ce3a133f71b3
conflicts: make spacing consistent in conflict markers
Kostia Balytskyi <ikostia@fb.com>
parents:
30162
diff
changeset
|
448 <<<<<<< working copy: 2e60aa20b912 - test: 1 |
18337
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
449 1 |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
450 ======= |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
451 2 |
30160
008c4ce64e3f
tests: add test coverage of merging x flag without ancestor
Mads Kiilerich <madski@unity3d.com>
parents:
30062
diff
changeset
|
452 >>>>>>> merge rev: 0c617753b41b - test: 2 |
18337
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
453 $ tellmeabout c |
20897
0b50788c160c
merge: use ancestor filename from planning phase instead of filectx ancestor
Mads Kiilerich <madski@unity3d.com>
parents:
18605
diff
changeset
|
454 c is an executable file with content: |
18337
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
455 x |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
456 $ tellmeabout d |
18338
384df4db6520
merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents:
18337
diff
changeset
|
457 d is an executable file with content: |
18337
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
458 1 |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
459 $ tellmeabout e |
18338
384df4db6520
merge: merge file flags together with file content
Mads Kiilerich <mads@kiilerich.com>
parents:
18337
diff
changeset
|
460 e is an executable file with content: |
18337
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
461 x (no-eol) |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
462 $ tellmeabout f |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
463 f is a plain file with content: |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
464 1 |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
465 $ tellmeabout g |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
466 g is a plain file with content: |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
467 x (no-eol) |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
468 $ tellmeabout h |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
469 h is a symlink: |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
470 h -> 1 |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
471 |
557c8522aec0
tests: better test coverage of merges of flags
Mads Kiilerich <mads@kiilerich.com>
parents:
18334
diff
changeset
|
472 $ cd .. |