test-newbranch.t
329 lines
| 7.5 KiB
| text/troff
|
Tads3Lexer
/ tests / test-newbranch.t
jfh
|
r13272 | $ branchcache=.hg/cache/branchheads | ||
Adrian Buehlmann
|
r12279 | |||
$ hg init t | ||||
$ cd t | ||||
$ hg branches | ||||
$ echo foo > a | ||||
$ hg add a | ||||
$ hg ci -m "initial" | ||||
$ hg branch foo | ||||
marked working directory as branch foo | ||||
Matt Mackall
|
r15615 | (branches are permanent and global, did you want a bookmark?) | ||
Adrian Buehlmann
|
r12279 | $ hg branch | ||
foo | ||||
$ hg ci -m "add branch name" | ||||
$ hg branch bar | ||||
marked working directory as branch bar | ||||
Matt Mackall
|
r15615 | (branches are permanent and global, did you want a bookmark?) | ||
Adrian Buehlmann
|
r12279 | $ hg ci -m "change branch name" | ||
Branch shadowing: | ||||
$ hg branch default | ||||
Martin Geisler
|
r14198 | abort: a branch of the same name already exists | ||
(use 'hg update' to switch to it) | ||||
Matt Mackall
|
r12316 | [255] | ||
Adrian Buehlmann
|
r12279 | |||
$ hg branch -f default | ||||
marked working directory as branch default | ||||
Matt Mackall
|
r15615 | (branches are permanent and global, did you want a bookmark?) | ||
Adrian Buehlmann
|
r12279 | |||
$ hg ci -m "clear branch name" | ||||
created new head | ||||
There should be only one default branch head | ||||
$ hg heads . | ||||
Peter Arrenbrecht
|
r14162 | changeset: 3:1c28f494dae6 | ||
Adrian Buehlmann
|
r12279 | tag: tip | ||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: clear branch name | ||||
$ hg co foo | ||||
0 files updated, 0 files merged, 0 files removed, 0 files unresolved | ||||
$ hg branch | ||||
foo | ||||
$ echo bleah > a | ||||
$ hg ci -m "modify a branch" | ||||
$ hg merge default | ||||
0 files updated, 0 files merged, 0 files removed, 0 files unresolved | ||||
(branch merge, don't forget to commit) | ||||
$ hg branch | ||||
foo | ||||
$ hg ci -m "merge" | ||||
$ hg log | ||||
Peter Arrenbrecht
|
r14162 | changeset: 5:530046499edf | ||
Adrian Buehlmann
|
r12279 | branch: foo | ||
tag: tip | ||||
Peter Arrenbrecht
|
r14162 | parent: 4:adf1a74a7f7b | ||
parent: 3:1c28f494dae6 | ||||
Adrian Buehlmann
|
r12279 | user: test | ||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: merge | ||||
Peter Arrenbrecht
|
r14162 | changeset: 4:adf1a74a7f7b | ||
Adrian Buehlmann
|
r12279 | branch: foo | ||
Peter Arrenbrecht
|
r14162 | parent: 1:6c0e42da283a | ||
Adrian Buehlmann
|
r12279 | user: test | ||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: modify a branch | ||||
Peter Arrenbrecht
|
r14162 | changeset: 3:1c28f494dae6 | ||
Adrian Buehlmann
|
r12279 | user: test | ||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: clear branch name | ||||
Peter Arrenbrecht
|
r14162 | changeset: 2:c21617b13b22 | ||
Adrian Buehlmann
|
r12279 | branch: bar | ||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: change branch name | ||||
Peter Arrenbrecht
|
r14162 | changeset: 1:6c0e42da283a | ||
Adrian Buehlmann
|
r12279 | branch: foo | ||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: add branch name | ||||
changeset: 0:db01e8ea3388 | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: initial | ||||
$ hg branches | ||||
Peter Arrenbrecht
|
r14162 | foo 5:530046499edf | ||
default 3:1c28f494dae6 (inactive) | ||||
bar 2:c21617b13b22 (inactive) | ||||
Adrian Buehlmann
|
r12279 | |||
$ hg branches -q | ||||
foo | ||||
default | ||||
bar | ||||
Test for invalid branch cache: | ||||
$ hg rollback | ||||
Gilles Moris
|
r13446 | repository tip rolled back to revision 4 (undo commit) | ||
Wagner Bruna
|
r13455 | working directory now based on revisions 4 and 3 | ||
Adrian Buehlmann
|
r12279 | |||
$ cp $branchcache .hg/bc-invalid | ||||
$ hg log -r foo | ||||
Peter Arrenbrecht
|
r14162 | changeset: 4:adf1a74a7f7b | ||
Adrian Buehlmann
|
r12279 | branch: foo | ||
tag: tip | ||||
Peter Arrenbrecht
|
r14162 | parent: 1:6c0e42da283a | ||
Adrian Buehlmann
|
r12279 | user: test | ||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: modify a branch | ||||
$ cp .hg/bc-invalid $branchcache | ||||
$ hg --debug log -r foo | ||||
invalidating branch cache (tip differs) | ||||
Peter Arrenbrecht
|
r14162 | changeset: 4:adf1a74a7f7b4cd193d12992f5d0d6a004ed21d6 | ||
Adrian Buehlmann
|
r12279 | branch: foo | ||
tag: tip | ||||
Pierre-Yves David
|
r15907 | phase: draft | ||
Peter Arrenbrecht
|
r14162 | parent: 1:6c0e42da283a56b5edc5b4fadb491365ec7f5fa8 | ||
Adrian Buehlmann
|
r12279 | parent: -1:0000000000000000000000000000000000000000 | ||
Peter Arrenbrecht
|
r14162 | manifest: 1:8c342a37dfba0b3d3ce073562a00d8a813c54ffe | ||
Adrian Buehlmann
|
r12279 | user: test | ||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
files: a | ||||
extra: branch=foo | ||||
description: | ||||
modify a branch | ||||
$ rm $branchcache | ||||
$ echo corrupted > $branchcache | ||||
$ hg log -qr foo | ||||
Peter Arrenbrecht
|
r14162 | 4:adf1a74a7f7b | ||
Adrian Buehlmann
|
r12279 | |||
$ cat $branchcache | ||||
Peter Arrenbrecht
|
r14162 | adf1a74a7f7b4cd193d12992f5d0d6a004ed21d6 4 | ||
1c28f494dae69a2f8fc815059d257eccf3fcfe75 default | ||||
adf1a74a7f7b4cd193d12992f5d0d6a004ed21d6 foo | ||||
c21617b13b220988e7a2e26290fbe4325ffa7139 bar | ||||
Adrian Buehlmann
|
r12279 | |||
Push should update the branch cache: | ||||
$ hg init ../target | ||||
Pushing just rev 0: | ||||
$ hg push -qr 0 ../target | ||||
$ cat ../target/$branchcache | ||||
db01e8ea3388fd3c7c94e1436ea2bd6a53d581c5 0 | ||||
db01e8ea3388fd3c7c94e1436ea2bd6a53d581c5 default | ||||
Pushing everything: | ||||
$ hg push -qf ../target | ||||
$ cat ../target/$branchcache | ||||
Peter Arrenbrecht
|
r14162 | adf1a74a7f7b4cd193d12992f5d0d6a004ed21d6 4 | ||
1c28f494dae69a2f8fc815059d257eccf3fcfe75 default | ||||
adf1a74a7f7b4cd193d12992f5d0d6a004ed21d6 foo | ||||
c21617b13b220988e7a2e26290fbe4325ffa7139 bar | ||||
Adrian Buehlmann
|
r12279 | |||
Update with no arguments: tipmost revision of the current branch: | ||||
$ hg up -q -C 0 | ||||
$ hg up -q | ||||
$ hg id | ||||
Peter Arrenbrecht
|
r14162 | 1c28f494dae6 | ||
Adrian Buehlmann
|
r12279 | |||
$ hg up -q 1 | ||||
$ hg up -q | ||||
$ hg id | ||||
Peter Arrenbrecht
|
r14162 | adf1a74a7f7b (foo) tip | ||
Adrian Buehlmann
|
r12279 | |||
$ hg branch foobar | ||||
marked working directory as branch foobar | ||||
Matt Mackall
|
r15615 | (branches are permanent and global, did you want a bookmark?) | ||
Adrian Buehlmann
|
r12279 | |||
$ hg up | ||||
abort: branch foobar not found | ||||
Matt Mackall
|
r12316 | [255] | ||
Adrian Buehlmann
|
r12279 | |||
Fastforward merge: | ||||
$ hg branch ff | ||||
marked working directory as branch ff | ||||
Matt Mackall
|
r15615 | (branches are permanent and global, did you want a bookmark?) | ||
Adrian Buehlmann
|
r12279 | |||
$ echo ff > ff | ||||
$ hg ci -Am'fast forward' | ||||
adding ff | ||||
$ hg up foo | ||||
0 files updated, 0 files merged, 1 files removed, 0 files unresolved | ||||
$ hg merge ff | ||||
1 files updated, 0 files merged, 0 files removed, 0 files unresolved | ||||
(branch merge, don't forget to commit) | ||||
$ hg branch | ||||
foo | ||||
$ hg commit -m'Merge ff into foo' | ||||
$ hg parents | ||||
Peter Arrenbrecht
|
r14162 | changeset: 6:185ffbfefa30 | ||
Adrian Buehlmann
|
r12279 | branch: foo | ||
tag: tip | ||||
Peter Arrenbrecht
|
r14162 | parent: 4:adf1a74a7f7b | ||
parent: 5:1a3c27dc5e11 | ||||
Adrian Buehlmann
|
r12279 | user: test | ||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: Merge ff into foo | ||||
$ hg manifest | ||||
a | ||||
ff | ||||
Test merging, add 3 default heads and one test head: | ||||
$ cd .. | ||||
$ hg init merges | ||||
$ cd merges | ||||
$ echo a > a | ||||
$ hg ci -Ama | ||||
adding a | ||||
$ echo b > b | ||||
$ hg ci -Amb | ||||
adding b | ||||
$ hg up 0 | ||||
0 files updated, 0 files merged, 1 files removed, 0 files unresolved | ||||
$ echo c > c | ||||
$ hg ci -Amc | ||||
adding c | ||||
created new head | ||||
$ hg up 0 | ||||
0 files updated, 0 files merged, 1 files removed, 0 files unresolved | ||||
$ echo d > d | ||||
$ hg ci -Amd | ||||
adding d | ||||
created new head | ||||
$ hg up 0 | ||||
0 files updated, 0 files merged, 1 files removed, 0 files unresolved | ||||
$ hg branch test | ||||
marked working directory as branch test | ||||
Matt Mackall
|
r15615 | (branches are permanent and global, did you want a bookmark?) | ||
Adrian Buehlmann
|
r12279 | $ echo e >> e | ||
$ hg ci -Ame | ||||
adding e | ||||
$ hg log | ||||
changeset: 4:3a1e01ed1df4 | ||||
branch: test | ||||
tag: tip | ||||
parent: 0:cb9a9f314b8b | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: e | ||||
changeset: 3:980f7dc84c29 | ||||
parent: 0:cb9a9f314b8b | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: d | ||||
changeset: 2:d36c0562f908 | ||||
parent: 0:cb9a9f314b8b | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: c | ||||
changeset: 1:d2ae7f538514 | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: b | ||||
changeset: 0:cb9a9f314b8b | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: a | ||||
Implicit merge with test branch as parent: | ||||
$ hg merge | ||||
abort: branch 'test' has one head - please merge with an explicit rev | ||||
(run 'hg heads' to see all heads) | ||||
Matt Mackall
|
r12316 | [255] | ||
Adrian Buehlmann
|
r12279 | $ hg up -C default | ||
1 files updated, 0 files merged, 1 files removed, 0 files unresolved | ||||
Implicit merge with default branch as parent: | ||||
$ hg merge | ||||
abort: branch 'default' has 3 heads - please merge with an explicit rev | ||||
(run 'hg heads .' to see heads) | ||||
Matt Mackall
|
r12316 | [255] | ||
Adrian Buehlmann
|
r12279 | |||
3 branch heads, explicit merge required: | ||||
$ hg merge 2 | ||||
1 files updated, 0 files merged, 0 files removed, 0 files unresolved | ||||
(branch merge, don't forget to commit) | ||||
$ hg ci -m merge | ||||
2 branch heads, implicit merge works: | ||||
$ hg merge | ||||
1 files updated, 0 files merged, 0 files removed, 0 files unresolved | ||||
(branch merge, don't forget to commit) | ||||