summaryrefslogtreecommitdiff
path: root/tests/test-pull-branch.t
diff options
context:
space:
mode:
authorLorry <lorry@roadtrain.codethink.co.uk>2012-08-22 14:49:51 +0100
committerLorry <lorry@roadtrain.codethink.co.uk>2012-08-22 14:49:51 +0100
commita498da43c7fdb9f24b73680c02a4a3588cc62d9a (patch)
treedaf8119dae1749b5165b68033a1b23a7375ce9ce /tests/test-pull-branch.t
downloadmercurial-tarball-a498da43c7fdb9f24b73680c02a4a3588cc62d9a.tar.gz
Tarball conversion
Diffstat (limited to 'tests/test-pull-branch.t')
-rw-r--r--tests/test-pull-branch.t216
1 files changed, 216 insertions, 0 deletions
diff --git a/tests/test-pull-branch.t b/tests/test-pull-branch.t
new file mode 100644
index 0000000..a9545cf
--- /dev/null
+++ b/tests/test-pull-branch.t
@@ -0,0 +1,216 @@
+ $ hg init t
+ $ cd t
+ $ echo 1 > foo
+ $ hg ci -Am1 # 0
+ adding foo
+ $ hg branch branchA
+ marked working directory as branch branchA
+ (branches are permanent and global, did you want a bookmark?)
+ $ echo a1 > foo
+ $ hg ci -ma1 # 1
+
+ $ cd ..
+ $ hg init tt
+ $ cd tt
+ $ hg pull ../t
+ pulling from ../t
+ requesting all changes
+ adding changesets
+ adding manifests
+ adding file changes
+ added 2 changesets with 2 changes to 1 files
+ (run 'hg update' to get a working copy)
+ $ hg up branchA
+ 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
+
+ $ cd ../t
+ $ echo a2 > foo
+ $ hg ci -ma2 # 2
+
+Create branch B:
+
+ $ hg up 0
+ 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
+ $ hg branch branchB
+ marked working directory as branch branchB
+ (branches are permanent and global, did you want a bookmark?)
+ $ echo b1 > foo
+ $ hg ci -mb1 # 3
+
+ $ cd ../tt
+
+A new branch is there
+
+ $ hg pull -u ../t
+ pulling from ../t
+ searching for changes
+ adding changesets
+ adding manifests
+ adding file changes
+ added 2 changesets with 2 changes to 1 files (+1 heads)
+ 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
+
+Develop both branches:
+
+ $ cd ../t
+ $ hg up branchA
+ 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
+ $ echo a3 > foo
+ $ hg ci -ma3 # 4
+ $ hg up branchB
+ 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
+ $ echo b2 > foo
+ $ hg ci -mb2 # 5
+
+ $ cd ../tt
+
+Should succeed, no new heads:
+
+ $ hg pull -u ../t
+ pulling from ../t
+ searching for changes
+ adding changesets
+ adding manifests
+ adding file changes
+ added 2 changesets with 2 changes to 1 files
+ 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
+
+Add a head on other branch:
+
+ $ cd ../t
+ $ hg up branchA
+ 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
+ $ echo a4 > foo
+ $ hg ci -ma4 # 6
+ $ hg up branchB
+ 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
+ $ echo b3.1 > foo
+ $ hg ci -m b3.1 # 7
+ $ hg up 5
+ 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
+ $ echo b3.2 > foo
+ $ hg ci -m b3.2 # 8
+ created new head
+
+ $ cd ../tt
+
+Should succeed because there is only one head on our branch:
+
+ $ hg pull -u ../t
+ pulling from ../t
+ searching for changes
+ adding changesets
+ adding manifests
+ adding file changes
+ added 3 changesets with 3 changes to 1 files (+1 heads)
+ 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
+
+ $ cd ../t
+ $ hg up -C branchA
+ 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
+ $ echo a5.1 > foo
+ $ hg ci -ma5.1 # 9
+ $ hg up 6
+ 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
+ $ echo a5.2 > foo
+ $ hg ci -ma5.2 # 10
+ created new head
+ $ hg up 7
+ 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
+ $ echo b4.1 > foo
+ $ hg ci -m b4.1 # 11
+ $ hg up -C 8
+ 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
+ $ echo b4.2 > foo
+ $ hg ci -m b4.2 # 12
+
+ $ cd ../tt
+
+ $ hg pull -u ../t
+ pulling from ../t
+ searching for changes
+ adding changesets
+ adding manifests
+ adding file changes
+ added 4 changesets with 4 changes to 1 files (+1 heads)
+ 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
+
+Make changes on new branch on tt
+
+ $ hg up 6
+ 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
+ $ hg branch branchC
+ marked working directory as branch branchC
+ (branches are permanent and global, did you want a bookmark?)
+ $ echo b1 > bar
+ $ hg ci -Am "commit on branchC on tt"
+ adding bar
+
+Make changes on default branch on t
+
+ $ cd ../t
+ $ hg up -C default
+ 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
+ $ echo a1 > bar
+ $ hg ci -Am "commit on default on t"
+ adding bar
+
+Pull branchC from tt
+
+ $ hg pull ../tt
+ pulling from ../tt
+ searching for changes
+ adding changesets
+ adding manifests
+ adding file changes
+ added 1 changesets with 1 changes to 1 files (+1 heads)
+ (run 'hg heads' to see heads)
+
+Make changes on default and branchC on tt
+
+ $ cd ../tt
+ $ hg pull ../t
+ pulling from ../t
+ searching for changes
+ adding changesets
+ adding manifests
+ adding file changes
+ added 1 changesets with 1 changes to 1 files (+1 heads)
+ (run 'hg heads' to see heads)
+ $ hg up -C default
+ 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
+ $ echo a1 > bar1
+ $ hg ci -Am "commit on default on tt"
+ adding bar1
+ $ hg up branchC
+ 2 files updated, 0 files merged, 1 files removed, 0 files unresolved
+ $ echo a1 > bar2
+ $ hg ci -Am "commit on branchC on tt"
+ adding bar2
+
+Make changes on default and branchC on t
+
+ $ cd ../t
+ $ hg up default
+ 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
+ $ echo a1 > bar3
+ $ hg ci -Am "commit on default on t"
+ adding bar3
+ $ hg up branchC
+ 2 files updated, 0 files merged, 1 files removed, 0 files unresolved
+ $ echo a1 > bar4
+ $ hg ci -Am "commit on branchC on tt"
+ adding bar4
+
+Pull from tt
+
+ $ hg pull ../tt
+ pulling from ../tt
+ searching for changes
+ adding changesets
+ adding manifests
+ adding file changes
+ added 2 changesets with 2 changes to 2 files (+2 heads)
+ (run 'hg heads .' to see heads, 'hg merge' to merge)
+
+ $ cd ..