Mercurial > hg
annotate tests/test-merge4.t @ 45066:5a80915e99ce
commitctx: document the manifest writing function
Same spirit as for `_filecommit` lets document the input and output before
making any change or improvement.
This is part of a larger refactoring/cleanup of the commitctx code to clarify
and augment the logic gathering metadata useful for copy tracing. The current
code is a tad too long and entangled to make such update easy. We start with
easy and small cleanup.
Differential Revision: https://phab.mercurial-scm.org/D8705
author | Pierre-Yves David <pierre-yves.david@octobus.net> |
---|---|
date | Mon, 06 Jul 2020 21:08:15 +0200 |
parents | 8561ad49915d |
children | fc4fb2f17dd4 |
rev | line source |
---|---|
11977
db2a291e25e9
tests: unify test-merge4
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
2283
diff
changeset
|
1 $ hg init |
db2a291e25e9
tests: unify test-merge4
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
2283
diff
changeset
|
2 $ echo This is file a1 > a |
db2a291e25e9
tests: unify test-merge4
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
2283
diff
changeset
|
3 $ hg add a |
12156
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11977
diff
changeset
|
4 $ hg commit -m "commit #0" |
11977
db2a291e25e9
tests: unify test-merge4
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
2283
diff
changeset
|
5 $ echo This is file b1 > b |
db2a291e25e9
tests: unify test-merge4
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
2283
diff
changeset
|
6 $ hg add b |
12156
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11977
diff
changeset
|
7 $ hg commit -m "commit #1" |
11977
db2a291e25e9
tests: unify test-merge4
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
2283
diff
changeset
|
8 $ hg update 0 |
db2a291e25e9
tests: unify test-merge4
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
2283
diff
changeset
|
9 0 files updated, 0 files merged, 1 files removed, 0 files unresolved |
db2a291e25e9
tests: unify test-merge4
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
2283
diff
changeset
|
10 $ echo This is file c1 > c |
db2a291e25e9
tests: unify test-merge4
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
2283
diff
changeset
|
11 $ hg add c |
12156
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11977
diff
changeset
|
12 $ hg commit -m "commit #2" |
11977
db2a291e25e9
tests: unify test-merge4
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
2283
diff
changeset
|
13 created new head |
db2a291e25e9
tests: unify test-merge4
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
2283
diff
changeset
|
14 $ hg merge 1 |
db2a291e25e9
tests: unify test-merge4
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
2283
diff
changeset
|
15 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
db2a291e25e9
tests: unify test-merge4
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
2283
diff
changeset
|
16 (branch merge, don't forget to commit) |
db2a291e25e9
tests: unify test-merge4
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
2283
diff
changeset
|
17 $ rm b |
db2a291e25e9
tests: unify test-merge4
Pradeepkumar Gayam <in3xes@gmail.com>
parents:
2283
diff
changeset
|
18 $ echo This is file c22 > c |
16536
63c817ea4a70
commit: abort on merge with missing files
Patrick Mezard <patrick@mezard.eu>
parents:
12156
diff
changeset
|
19 |
63c817ea4a70
commit: abort on merge with missing files
Patrick Mezard <patrick@mezard.eu>
parents:
12156
diff
changeset
|
20 Test hg behaves when committing with a missing file added by a merge |
63c817ea4a70
commit: abort on merge with missing files
Patrick Mezard <patrick@mezard.eu>
parents:
12156
diff
changeset
|
21 |
12156
4c94b6d0fb1c
tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents:
11977
diff
changeset
|
22 $ hg commit -m "commit #3" |
16536
63c817ea4a70
commit: abort on merge with missing files
Patrick Mezard <patrick@mezard.eu>
parents:
12156
diff
changeset
|
23 abort: cannot commit merge with missing files |
63c817ea4a70
commit: abort on merge with missing files
Patrick Mezard <patrick@mezard.eu>
parents:
12156
diff
changeset
|
24 [255] |
416
5e9e8b8d2629
[PATCH] Removal of a file added by merging branches
mpm@selenic.com
parents:
diff
changeset
|
25 |
44343
8561ad49915d
revset: add a revset for parents in merge state
Martin von Zweigbergk <martinvonz@google.com>
parents:
16536
diff
changeset
|
26 |
8561ad49915d
revset: add a revset for parents in merge state
Martin von Zweigbergk <martinvonz@google.com>
parents:
16536
diff
changeset
|
27 Test conflict*() revsets |
8561ad49915d
revset: add a revset for parents in merge state
Martin von Zweigbergk <martinvonz@google.com>
parents:
16536
diff
changeset
|
28 |
8561ad49915d
revset: add a revset for parents in merge state
Martin von Zweigbergk <martinvonz@google.com>
parents:
16536
diff
changeset
|
29 # Bad usage |
8561ad49915d
revset: add a revset for parents in merge state
Martin von Zweigbergk <martinvonz@google.com>
parents:
16536
diff
changeset
|
30 $ hg log -r 'conflictlocal(foo)' |
8561ad49915d
revset: add a revset for parents in merge state
Martin von Zweigbergk <martinvonz@google.com>
parents:
16536
diff
changeset
|
31 hg: parse error: conflictlocal takes no arguments |
8561ad49915d
revset: add a revset for parents in merge state
Martin von Zweigbergk <martinvonz@google.com>
parents:
16536
diff
changeset
|
32 [255] |
8561ad49915d
revset: add a revset for parents in merge state
Martin von Zweigbergk <martinvonz@google.com>
parents:
16536
diff
changeset
|
33 $ hg log -r 'conflictother(foo)' |
8561ad49915d
revset: add a revset for parents in merge state
Martin von Zweigbergk <martinvonz@google.com>
parents:
16536
diff
changeset
|
34 hg: parse error: conflictother takes no arguments |
8561ad49915d
revset: add a revset for parents in merge state
Martin von Zweigbergk <martinvonz@google.com>
parents:
16536
diff
changeset
|
35 [255] |
8561ad49915d
revset: add a revset for parents in merge state
Martin von Zweigbergk <martinvonz@google.com>
parents:
16536
diff
changeset
|
36 $ hg co -C . |
8561ad49915d
revset: add a revset for parents in merge state
Martin von Zweigbergk <martinvonz@google.com>
parents:
16536
diff
changeset
|
37 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
8561ad49915d
revset: add a revset for parents in merge state
Martin von Zweigbergk <martinvonz@google.com>
parents:
16536
diff
changeset
|
38 # No merge parents when not merging |
8561ad49915d
revset: add a revset for parents in merge state
Martin von Zweigbergk <martinvonz@google.com>
parents:
16536
diff
changeset
|
39 $ hg log -r 'conflictlocal() + conflictother()' |
8561ad49915d
revset: add a revset for parents in merge state
Martin von Zweigbergk <martinvonz@google.com>
parents:
16536
diff
changeset
|
40 # No merge parents when there is no conflict |
8561ad49915d
revset: add a revset for parents in merge state
Martin von Zweigbergk <martinvonz@google.com>
parents:
16536
diff
changeset
|
41 $ hg merge 1 |
8561ad49915d
revset: add a revset for parents in merge state
Martin von Zweigbergk <martinvonz@google.com>
parents:
16536
diff
changeset
|
42 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
8561ad49915d
revset: add a revset for parents in merge state
Martin von Zweigbergk <martinvonz@google.com>
parents:
16536
diff
changeset
|
43 (branch merge, don't forget to commit) |
8561ad49915d
revset: add a revset for parents in merge state
Martin von Zweigbergk <martinvonz@google.com>
parents:
16536
diff
changeset
|
44 $ hg log -r 'conflictlocal() + conflictother()' |
8561ad49915d
revset: add a revset for parents in merge state
Martin von Zweigbergk <martinvonz@google.com>
parents:
16536
diff
changeset
|
45 $ hg co -C . |
8561ad49915d
revset: add a revset for parents in merge state
Martin von Zweigbergk <martinvonz@google.com>
parents:
16536
diff
changeset
|
46 0 files updated, 0 files merged, 1 files removed, 0 files unresolved |
8561ad49915d
revset: add a revset for parents in merge state
Martin von Zweigbergk <martinvonz@google.com>
parents:
16536
diff
changeset
|
47 $ echo conflict > b |
8561ad49915d
revset: add a revset for parents in merge state
Martin von Zweigbergk <martinvonz@google.com>
parents:
16536
diff
changeset
|
48 $ hg ci -Aqm 'conflicting change to b' |
8561ad49915d
revset: add a revset for parents in merge state
Martin von Zweigbergk <martinvonz@google.com>
parents:
16536
diff
changeset
|
49 $ hg merge 1 |
8561ad49915d
revset: add a revset for parents in merge state
Martin von Zweigbergk <martinvonz@google.com>
parents:
16536
diff
changeset
|
50 merging b |
8561ad49915d
revset: add a revset for parents in merge state
Martin von Zweigbergk <martinvonz@google.com>
parents:
16536
diff
changeset
|
51 warning: conflicts while merging b! (edit, then use 'hg resolve --mark') |
8561ad49915d
revset: add a revset for parents in merge state
Martin von Zweigbergk <martinvonz@google.com>
parents:
16536
diff
changeset
|
52 0 files updated, 0 files merged, 0 files removed, 1 files unresolved |
8561ad49915d
revset: add a revset for parents in merge state
Martin von Zweigbergk <martinvonz@google.com>
parents:
16536
diff
changeset
|
53 use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon |
8561ad49915d
revset: add a revset for parents in merge state
Martin von Zweigbergk <martinvonz@google.com>
parents:
16536
diff
changeset
|
54 [1] |
8561ad49915d
revset: add a revset for parents in merge state
Martin von Zweigbergk <martinvonz@google.com>
parents:
16536
diff
changeset
|
55 # Shows merge parents when there is a conflict |
8561ad49915d
revset: add a revset for parents in merge state
Martin von Zweigbergk <martinvonz@google.com>
parents:
16536
diff
changeset
|
56 $ hg log -r 'conflictlocal()' -T '{rev} {desc}\n' |
8561ad49915d
revset: add a revset for parents in merge state
Martin von Zweigbergk <martinvonz@google.com>
parents:
16536
diff
changeset
|
57 3 conflicting change to b |
8561ad49915d
revset: add a revset for parents in merge state
Martin von Zweigbergk <martinvonz@google.com>
parents:
16536
diff
changeset
|
58 $ hg log -r 'conflictother()' -T '{rev} {desc}\n' |
8561ad49915d
revset: add a revset for parents in merge state
Martin von Zweigbergk <martinvonz@google.com>
parents:
16536
diff
changeset
|
59 1 commit #1 |