test-merge-default.t
175 lines
| 4.0 KiB
| text/troff
|
Tads3Lexer
/ tests / test-merge-default.t
|
r12255 | $ hg init | ||
$ echo a > a | ||||
$ hg commit -A -ma | ||||
adding a | ||||
$ echo b >> a | ||||
$ hg commit -mb | ||||
$ echo c >> a | ||||
$ hg commit -mc | ||||
$ hg up 1 | ||||
1 files updated, 0 files merged, 0 files removed, 0 files unresolved | ||||
$ echo d >> a | ||||
$ hg commit -md | ||||
created new head | ||||
$ hg up 1 | ||||
1 files updated, 0 files merged, 0 files removed, 0 files unresolved | ||||
$ echo e >> a | ||||
$ hg commit -me | ||||
created new head | ||||
$ hg up 1 | ||||
1 files updated, 0 files merged, 0 files removed, 0 files unresolved | ||||
Should fail because not at a head: | ||||
$ hg merge | ||||
|
r28103 | abort: working directory not at a head revision | ||
(use 'hg update' or merge with an explicit revision) | ||||
|
r12316 | [255] | ||
|
r12255 | |||
$ hg up | ||||
1 files updated, 0 files merged, 0 files removed, 0 files unresolved | ||||
|
r32698 | updated to "f25cbe84d8b3: e" | ||
|
r28029 | 2 other heads for branch "default" | ||
|
r12255 | |||
Should fail because > 2 heads: | ||||
$ HGMERGE=internal:other; export HGMERGE | ||||
$ hg merge | ||||
abort: branch 'default' has 3 heads - please merge with an explicit rev | ||||
(run 'hg heads .' to see heads) | ||||
|
r12316 | [255] | ||
|
r12255 | |||
Should succeed: | ||||
$ hg merge 2 | ||||
0 files updated, 1 files merged, 0 files removed, 0 files unresolved | ||||
(branch merge, don't forget to commit) | ||||
|
r33051 | $ hg id -Tjson | ||
[ | ||||
{ | ||||
"bookmarks": [], | ||||
"branch": "default", | ||||
|
r33054 | "dirty": "+", | ||
|
r39661 | "id": "f25cbe84d8b320e298e7703f18a25a3959518c23+2d95304fed5d89bc9d70b2a0d02f0d567469c3ab+", | ||
|
r33051 | "node": "ffffffffffffffffffffffffffffffffffffffff", | ||
|
r39662 | "parents": ["f25cbe84d8b320e298e7703f18a25a3959518c23", "2d95304fed5d89bc9d70b2a0d02f0d567469c3ab"], | ||
|
r33051 | "tags": ["tip"] | ||
} | ||||
] | ||||
|
r12255 | $ hg commit -mm1 | ||
Should succeed - 2 heads: | ||||
$ hg merge -P | ||||
changeset: 3:ea9ff125ff88 | ||||
parent: 1:1846eede8b68 | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: d | ||||
$ hg merge | ||||
0 files updated, 1 files merged, 0 files removed, 0 files unresolved | ||||
(branch merge, don't forget to commit) | ||||
$ hg commit -mm2 | ||||
|
r33051 | $ hg id -r 1 -Tjson | ||
[ | ||||
{ | ||||
"bookmarks": [], | ||||
"branch": "default", | ||||
|
r39661 | "id": "1846eede8b6886d8cc8a88c96a687b7fe8f3b9d1", | ||
|
r33051 | "node": "1846eede8b6886d8cc8a88c96a687b7fe8f3b9d1", | ||
"tags": [] | ||||
} | ||||
] | ||||
|
r12255 | Should fail because at tip: | ||
$ hg merge | ||||
|
r15619 | abort: nothing to merge | ||
|
r12316 | [255] | ||
|
r12255 | |||
$ hg up 0 | ||||
1 files updated, 0 files merged, 0 files removed, 0 files unresolved | ||||
Should fail because there is only one head: | ||||
$ hg merge | ||||
|
r15619 | abort: nothing to merge | ||
(use 'hg update' instead) | ||||
|
r12316 | [255] | ||
|
r12255 | |||
$ hg up 3 | ||||
1 files updated, 0 files merged, 0 files removed, 0 files unresolved | ||||
$ echo f >> a | ||||
$ hg branch foobranch | ||||
marked working directory as branch foobranch | ||||
|
r15615 | (branches are permanent and global, did you want a bookmark?) | ||
|
r12255 | $ hg commit -mf | ||
Should fail because merge with other branch: | ||||
$ hg merge | ||||
abort: branch 'foobranch' has one head - please merge with an explicit rev | ||||
(run 'hg heads' to see all heads) | ||||
|
r12316 | [255] | ||
|
r12255 | |||
Test for issue2043: ensure that 'merge -P' shows ancestors of 6 that | ||||
|
r22389 | are not ancestors of 7, regardless of where their common ancestors are. | ||
|
r12255 | |||
Merge preview not affected by common ancestor: | ||||
$ hg up -q 7 | ||||
$ hg merge -q -P 6 | ||||
2:2d95304fed5d | ||||
4:f25cbe84d8b3 | ||||
5:a431fabd6039 | ||||
6:e88e33f3bf62 | ||||
|
r26716 | Test experimental destination revset | ||
$ hg log -r '_destmerge()' | ||||
abort: branch 'foobranch' has one head - please merge with an explicit rev | ||||
(run 'hg heads' to see all heads) | ||||
[255] | ||||
|
r28139 | (on a branch with a two heads) | ||
$ hg up 5 | ||||
1 files updated, 0 files merged, 0 files removed, 0 files unresolved | ||||
$ echo f >> a | ||||
$ hg commit -mf | ||||
created new head | ||||
$ hg log -r '_destmerge()' | ||||
changeset: 6:e88e33f3bf62 | ||||
parent: 5:a431fabd6039 | ||||
parent: 3:ea9ff125ff88 | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: m2 | ||||
(from the other head) | ||||
$ hg log -r '_destmerge(e88e33f3bf62)' | ||||
changeset: 8:b613918999e2 | ||||
tag: tip | ||||
parent: 5:a431fabd6039 | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: f | ||||
(from unrelated branch) | ||||
$ hg log -r '_destmerge(foobranch)' | ||||
abort: branch 'foobranch' has one head - please merge with an explicit rev | ||||
(run 'hg heads' to see all heads) | ||||
[255] | ||||