tests/test-merge-default.t
changeset 12255 9b3c02c36d92
parent 10658 95c7c4b7e67a
child 12316 4134686b83e1
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/test-merge-default.t	Sat Sep 11 11:44:53 2010 +0200
@@ -0,0 +1,104 @@
+  $ 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
+  abort: branch 'default' has 3 heads - please merge with an explicit rev
+  (run 'hg heads .' to see heads)
+
+  $ hg up
+  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
+
+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)
+
+Should succeed:
+
+  $ hg merge 2
+  0 files updated, 1 files merged, 0 files removed, 0 files unresolved
+  (branch merge, don't forget to commit)
+  $ 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
+
+Should fail because at tip:
+
+  $ hg merge
+  abort: there is nothing to merge
+
+  $ 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
+  abort: there is nothing to merge - use "hg update" instead
+
+  $ 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
+  $ 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)
+
+
+Test for issue2043: ensure that 'merge -P' shows ancestors of 6 that
+are not ancestors of 7, regardless of where their least common
+ancestor is.
+
+Merge preview not affected by common ancestor:
+
+  $ hg up -q 7
+  $ hg merge -q -P 6
+  2:2d95304fed5d
+  4:f25cbe84d8b3
+  5:a431fabd6039
+  6:e88e33f3bf62
+