tests/test-rebase-abort.t
changeset 12608 16b854cb80f1
parent 11316 7fa3968004c1
child 12640 6cc4b14fb76b
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/test-rebase-abort.t	Fri Oct 01 16:10:06 2010 +0200
@@ -0,0 +1,148 @@
+  $ cat >> $HGRCPATH <<EOF
+  > [extensions]
+  > graphlog=
+  > rebase=
+  > 
+  > [alias]
+  > tglog = log -G --template "{rev}: '{desc}' {branches}\n"
+  > EOF
+
+
+  $ hg init a
+  $ cd a
+
+  $ echo c1 > common
+  $ hg add common
+  $ hg ci -m C1
+
+  $ echo c2 >> common
+  $ hg ci -m C2
+
+  $ echo c3 >> common
+  $ hg ci -m C3
+
+  $ hg up -q -C 1
+
+  $ echo l1 >> extra
+  $ hg add extra
+  $ hg ci -m L1
+  created new head
+
+  $ sed -e 's/c2/l2/' common > common.new
+  $ mv common.new common
+  $ hg ci -m L2
+
+  $ hg tglog
+  @  4: 'L2'
+  |
+  o  3: 'L1'
+  |
+  | o  2: 'C3'
+  |/
+  o  1: 'C2'
+  |
+  o  0: 'C1'
+  
+
+Conflicting rebase:
+
+  $ hg rebase -s 3 -d 2
+  merging common
+  warning: conflicts during merge.
+  merging common failed!
+  abort: fix unresolved conflicts with hg resolve then run hg rebase --continue
+  [255]
+
+Abort:
+
+  $ hg rebase --abort
+  saved backup bundle to */.hg/strip-backup/*-backup.hg (glob)
+  rebase aborted
+
+  $ hg tglog
+  @  4: 'L2'
+  |
+  o  3: 'L1'
+  |
+  | o  2: 'C3'
+  |/
+  o  1: 'C2'
+  |
+  o  0: 'C1'
+  
+  $ cd ..
+
+
+Constrcut new repo:
+
+  $ hg init b
+  $ cd b
+
+  $ echo a > a
+  $ hg ci -Am A
+  adding a
+
+  $ echo b > b
+  $ hg ci -Am B
+  adding b
+
+  $ echo c > c
+  $ hg ci -Am C
+  adding c
+
+  $ hg up -q 0
+
+  $ echo b > b
+  $ hg ci -Am 'B bis'
+  adding b
+  created new head
+
+  $ echo c1 > c
+  $ hg ci -Am C1
+  adding c
+
+Rebase and abort without generating new changesets:
+
+  $ hg tglog
+  @  4: 'C1'
+  |
+  o  3: 'B bis'
+  |
+  | o  2: 'C'
+  | |
+  | o  1: 'B'
+  |/
+  o  0: 'A'
+  
+  $ hg rebase -b 4 -d 2
+  merging c
+  warning: conflicts during merge.
+  merging c failed!
+  abort: fix unresolved conflicts with hg resolve then run hg rebase --continue
+  [255]
+
+  $ hg tglog
+  @  4: 'C1'
+  |
+  o  3: 'B bis'
+  |
+  | @  2: 'C'
+  | |
+  | o  1: 'B'
+  |/
+  o  0: 'A'
+  
+  $ hg rebase -a
+  rebase aborted
+
+  $ hg tglog
+  @  4: 'C1'
+  |
+  o  3: 'B bis'
+  |
+  | o  2: 'C'
+  | |
+  | o  1: 'B'
+  |/
+  o  0: 'A'
+