##// END OF EJS Templates
templatekw: inline showlist() into showbookmarks()...
templatekw: inline showlist() into showbookmarks() showlist() is the helper to build _hybrid object from a trivial list. It can't be applied if each value has more than one items, 'bookmark' and 'current' in this case. This change is necessary to fix random failure of "{join(bookmarks, sep)}".

File last commit:

r22363:9510b0e9 default
r24156:75a2df2b stable
Show More
test-newbranch.t
355 lines | 8.1 KiB | text/troff | Tads3Lexer
Brodie Rao
branchmap: cache open/closed branch head information...
r20185 $ branchcache=.hg/cache/branch2
Adrian Buehlmann
combine tests
r12279
Pierre-Yves David
branchmap: allow to use cache of subset...
r18234 $ listbranchcaches() {
Brodie Rao
branchmap: cache open/closed branch head information...
r20185 > for f in .hg/cache/branch2*;
Pierre-Yves David
branchmap: allow to use cache of subset...
r18234 > do echo === $f ===;
> cat $f;
> done;
> }
$ purgebranchcaches() {
Brodie Rao
branchmap: cache open/closed branch head information...
r20185 > rm .hg/cache/branch2*
Pierre-Yves David
branchmap: allow to use cache of subset...
r18234 > }
Adrian Buehlmann
combine tests
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
branch: warn on branching
r15615 (branches are permanent and global, did you want a bookmark?)
Adrian Buehlmann
combine tests
r12279 $ hg branch
foo
$ hg ci -m "add branch name"
$ hg branch bar
marked working directory as branch bar
Matt Mackall
branch: warn on branching
r15615 (branches are permanent and global, did you want a bookmark?)
Adrian Buehlmann
combine tests
r12279 $ hg ci -m "change branch name"
Branch shadowing:
$ hg branch default
Martin Geisler
commands: use util.Abort's hint some more
r14198 abort: a branch of the same name already exists
(use 'hg update' to switch to it)
Matt Mackall
tests: add exit codes to unified tests
r12316 [255]
Adrian Buehlmann
combine tests
r12279
$ hg branch -f default
marked working directory as branch default
Matt Mackall
branch: warn on branching
r15615 (branches are permanent and global, did you want a bookmark?)
Adrian Buehlmann
combine tests
r12279
$ hg ci -m "clear branch name"
created new head
There should be only one default branch head
$ hg heads .
Peter Arrenbrecht
localrepo: reuse parent manifest in commitctx if no files have changed...
r14162 changeset: 3:1c28f494dae6
Adrian Buehlmann
combine tests
r12279 tag: tip
user: test
date: Thu Jan 01 00:00:00 1970 +0000
summary: clear branch name
Mads Kiilerich
tests: improve test coverage of branch command and existing branches
r22363 Merging and branches
Adrian Buehlmann
combine tests
r12279
$ hg co foo
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ hg branch
foo
Mads Kiilerich
tests: improve test coverage of branch command and existing branches
r22363
set existing branch name fails unless force - setting existing parent branch works without force:
$ hg branch bar
abort: a branch of the same name already exists
(use 'hg update' to switch to it)
[255]
$ hg branch -f bar
marked working directory as branch bar
(branches are permanent and global, did you want a bookmark?)
$ hg branch foo
marked working directory as branch foo
(branches are permanent and global, did you want a bookmark?)
Adrian Buehlmann
combine tests
r12279 $ 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
Mads Kiilerich
tests: improve test coverage of branch command and existing branches
r22363
set existing branch name where branch head is ancestor:
$ hg branch bar
abort: a branch of the same name already exists
(use 'hg update' to switch to it)
[255]
set (other) parent branch as branch name
$ hg branch default
marked working directory as branch default
(branches are permanent and global, did you want a bookmark?)
set (first) parent branch as branch name
$ hg branch foo
marked working directory as branch foo
(branches are permanent and global, did you want a bookmark?)
Adrian Buehlmann
combine tests
r12279 $ hg ci -m "merge"
Mads Kiilerich
tests: improve test coverage of branch command and existing branches
r22363 $ hg log -G -T '{rev}:{node|short} {branch} {desc}\n'
@ 5:530046499edf foo merge
|\
| o 4:adf1a74a7f7b foo modify a branch
| |
o | 3:1c28f494dae6 default clear branch name
| |
o | 2:c21617b13b22 bar change branch name
|/
o 1:6c0e42da283a foo add branch name
|
o 0:db01e8ea3388 default initial
Adrian Buehlmann
combine tests
r12279
$ hg branches
Peter Arrenbrecht
localrepo: reuse parent manifest in commitctx if no files have changed...
r14162 foo 5:530046499edf
default 3:1c28f494dae6 (inactive)
bar 2:c21617b13b22 (inactive)
Adrian Buehlmann
combine tests
r12279
$ hg branches -q
foo
default
bar
Test for invalid branch cache:
$ hg rollback
Gilles Moris
rollback: clarifies the message about the reverted state (issue2628)...
r13446 repository tip rolled back to revision 4 (undo commit)
Wagner Bruna
rollback, i18n: avoid parameterized message
r13455 working directory now based on revisions 4 and 3
Adrian Buehlmann
combine tests
r12279
Kevin Bullock
filtering: rename filters to their antonyms...
r18382 $ cp ${branchcache}-served .hg/bc-invalid
Adrian Buehlmann
combine tests
r12279
$ hg log -r foo
Peter Arrenbrecht
localrepo: reuse parent manifest in commitctx if no files have changed...
r14162 changeset: 4:adf1a74a7f7b
Adrian Buehlmann
combine tests
r12279 branch: foo
tag: tip
Peter Arrenbrecht
localrepo: reuse parent manifest in commitctx if no files have changed...
r14162 parent: 1:6c0e42da283a
Adrian Buehlmann
combine tests
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
Peter Arrenbrecht
localrepo: reuse parent manifest in commitctx if no files have changed...
r14162 changeset: 4:adf1a74a7f7b4cd193d12992f5d0d6a004ed21d6
Adrian Buehlmann
combine tests
r12279 branch: foo
tag: tip
Pierre-Yves David
changeset_printer: display changeset phase on debug level...
r15907 phase: draft
Peter Arrenbrecht
localrepo: reuse parent manifest in commitctx if no files have changed...
r14162 parent: 1:6c0e42da283a56b5edc5b4fadb491365ec7f5fa8
Adrian Buehlmann
combine tests
r12279 parent: -1:0000000000000000000000000000000000000000
Peter Arrenbrecht
localrepo: reuse parent manifest in commitctx if no files have changed...
r14162 manifest: 1:8c342a37dfba0b3d3ce073562a00d8a813c54ffe
Adrian Buehlmann
combine tests
r12279 user: test
date: Thu Jan 01 00:00:00 1970 +0000
files: a
extra: branch=foo
description:
modify a branch
Pierre-Yves David
branchmap: allow to use cache of subset...
r18234 $ purgebranchcaches
Adrian Buehlmann
combine tests
r12279 $ echo corrupted > $branchcache
$ hg log -qr foo
Peter Arrenbrecht
localrepo: reuse parent manifest in commitctx if no files have changed...
r14162 4:adf1a74a7f7b
Adrian Buehlmann
combine tests
r12279
Pierre-Yves David
branchmap: allow to use cache of subset...
r18234 $ listbranchcaches
Brodie Rao
branchmap: cache open/closed branch head information...
r20185 === .hg/cache/branch2 ===
Pierre-Yves David
branchmap: allow to use cache of subset...
r18234 corrupted
Brodie Rao
branchmap: cache open/closed branch head information...
r20185 === .hg/cache/branch2-served ===
Peter Arrenbrecht
localrepo: reuse parent manifest in commitctx if no files have changed...
r14162 adf1a74a7f7b4cd193d12992f5d0d6a004ed21d6 4
Brodie Rao
branchmap: cache open/closed branch head information...
r20185 c21617b13b220988e7a2e26290fbe4325ffa7139 o bar
1c28f494dae69a2f8fc815059d257eccf3fcfe75 o default
adf1a74a7f7b4cd193d12992f5d0d6a004ed21d6 o foo
Adrian Buehlmann
combine tests
r12279
Push should update the branch cache:
$ hg init ../target
Pushing just rev 0:
$ hg push -qr 0 ../target
Pierre-Yves David
branchmap: allow to use cache of subset...
r18234 $ (cd ../target/; listbranchcaches)
Brodie Rao
branchmap: cache open/closed branch head information...
r20185 === .hg/cache/branch2-base ===
Adrian Buehlmann
combine tests
r12279 db01e8ea3388fd3c7c94e1436ea2bd6a53d581c5 0
Brodie Rao
branchmap: cache open/closed branch head information...
r20185 db01e8ea3388fd3c7c94e1436ea2bd6a53d581c5 o default
Adrian Buehlmann
combine tests
r12279
Pushing everything:
$ hg push -qf ../target
Pierre-Yves David
branchmap: allow to use cache of subset...
r18234 $ (cd ../target/; listbranchcaches)
Brodie Rao
branchmap: cache open/closed branch head information...
r20185 === .hg/cache/branch2-base ===
Peter Arrenbrecht
localrepo: reuse parent manifest in commitctx if no files have changed...
r14162 adf1a74a7f7b4cd193d12992f5d0d6a004ed21d6 4
Brodie Rao
branchmap: cache open/closed branch head information...
r20185 c21617b13b220988e7a2e26290fbe4325ffa7139 o bar
1c28f494dae69a2f8fc815059d257eccf3fcfe75 o default
adf1a74a7f7b4cd193d12992f5d0d6a004ed21d6 o foo
Adrian Buehlmann
combine tests
r12279
Update with no arguments: tipmost revision of the current branch:
$ hg up -q -C 0
$ hg up -q
$ hg id
Peter Arrenbrecht
localrepo: reuse parent manifest in commitctx if no files have changed...
r14162 1c28f494dae6
Adrian Buehlmann
combine tests
r12279
$ hg up -q 1
$ hg up -q
$ hg id
Peter Arrenbrecht
localrepo: reuse parent manifest in commitctx if no files have changed...
r14162 adf1a74a7f7b (foo) tip
Adrian Buehlmann
combine tests
r12279
$ hg branch foobar
marked working directory as branch foobar
Matt Mackall
branch: warn on branching
r15615 (branches are permanent and global, did you want a bookmark?)
Adrian Buehlmann
combine tests
r12279
$ hg up
abort: branch foobar not found
Matt Mackall
tests: add exit codes to unified tests
r12316 [255]
Adrian Buehlmann
combine tests
r12279
Mads Kiilerich
spelling: fixes from spell checker
r21024 Fast-forward merge:
Adrian Buehlmann
combine tests
r12279
$ hg branch ff
marked working directory as branch ff
Matt Mackall
branch: warn on branching
r15615 (branches are permanent and global, did you want a bookmark?)
Adrian Buehlmann
combine tests
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
localrepo: reuse parent manifest in commitctx if no files have changed...
r14162 changeset: 6:185ffbfefa30
Adrian Buehlmann
combine tests
r12279 branch: foo
tag: tip
Peter Arrenbrecht
localrepo: reuse parent manifest in commitctx if no files have changed...
r14162 parent: 4:adf1a74a7f7b
parent: 5:1a3c27dc5e11
Adrian Buehlmann
combine tests
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
branch: warn on branching
r15615 (branches are permanent and global, did you want a bookmark?)
Adrian Buehlmann
combine tests
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
tests: add exit codes to unified tests
r12316 [255]
Adrian Buehlmann
combine tests
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
tests: add exit codes to unified tests
r12316 [255]
Adrian Buehlmann
combine tests
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)
Mads Kiilerich
tests: add missing trailing 'cd ..'...
r16913 $ cd ..