##// END OF EJS Templates
rebase: do not add second parent to rebased changeset (drop detach option) (BC)...
rebase: do not add second parent to rebased changeset (drop detach option) (BC) Rebase now behaves as if --detach was always passed. Non-merges are rebased as non-merges, regardless of their parent being an ancestor of the destination. Merges will usually be rebased as merges unless both of their parents are ancestors of the destination, or one of their parents is pruned when rebased. This only alters the behavior of rebase when using the --source/--rev options. --detach option is deprecated. All test changes were carefully validated.

File last commit:

r17005:50f43451 default
r17005:50f43451 default
Show More
test-rebase-parameters.t
430 lines | 5.8 KiB | text/troff | Tads3Lexer
/ tests / test-rebase-parameters.t
Adrian Buehlmann
tests: unify test-rebase*
r12608 $ cat >> $HGRCPATH <<EOF
> [extensions]
> graphlog=
> rebase=
>
Pierre-Yves David
phases: prevent rebase to rebase immutable changeset.
r15742 > [phases]
> publish=False
>
Adrian Buehlmann
tests: unify test-rebase*
r12608 > [alias]
> tglog = log -G --template "{rev}: '{desc}' {branches}\n"
> EOF
$ hg init a
$ cd a
Thomas Arendsen Hein
tests: make tests work if directory contains special characters...
r16350 $ hg unbundle "$TESTDIR/bundles/rebase.hg"
Nicolas Dumazet
tests: change test-rebase-parameters to use bundle/rebase.hg
r14122 adding changesets
adding manifests
adding file changes
added 8 changesets with 7 changes to 7 files (+2 heads)
(run 'hg heads' to see heads, 'hg merge' to merge)
$ hg up tip
3 files updated, 0 files merged, 0 files removed, 0 files unresolved
Adrian Buehlmann
tests: unify test-rebase*
r12608
Nicolas Dumazet
tests: change test-rebase-parameters to use bundle/rebase.hg
r14122 $ echo I > I
$ hg ci -AmI
adding I
Adrian Buehlmann
tests: unify test-rebase*
r12608
$ hg tglog
Nicolas Dumazet
tests: change test-rebase-parameters to use bundle/rebase.hg
r14122 @ 8: 'I'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |
Nicolas Dumazet
tests: change test-rebase-parameters to use bundle/rebase.hg
r14122 o 7: 'H'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |
Nicolas Dumazet
tests: change test-rebase-parameters to use bundle/rebase.hg
r14122 | o 6: 'G'
|/|
o | 5: 'F'
Adrian Buehlmann
tests: unify test-rebase*
r12608 | |
Nicolas Dumazet
tests: change test-rebase-parameters to use bundle/rebase.hg
r14122 | o 4: 'E'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |/
Nicolas Dumazet
tests: change test-rebase-parameters to use bundle/rebase.hg
r14122 | o 3: 'D'
| |
| o 2: 'C'
| |
| o 1: 'B'
|/
o 0: 'A'
Adrian Buehlmann
tests: unify test-rebase*
r12608
$ cd ..
These fail:
$ hg clone -q -u . a a1
$ cd a1
Nicolas Dumazet
tests: move testcase from rebase-named-branches to rebase-parameters...
r14123 $ hg rebase -s 8 -d 7
Pierre-Yves David
rebase: use revset as soon as possible in internal logic...
r15267 nothing to rebase
[1]
Nicolas Dumazet
tests: move testcase from rebase-named-branches to rebase-parameters...
r14123
Adrian Buehlmann
tests: unify test-rebase*
r12608 $ hg rebase --continue --abort
abort: cannot use both abort and continue
[255]
$ hg rebase --continue --collapse
abort: cannot use collapse with continue or abort
[255]
$ hg rebase --continue --dest 4
abort: abort and continue do not allow specifying revisions
[255]
$ hg rebase --base 5 --source 4
Pierre-Yves David
rebase: add --rev option to rebase...
r15270 abort: cannot specify both a source and a base
Adrian Buehlmann
tests: unify test-rebase*
r12608 [255]
Patrick Mezard
test-rebase-parameters: more tests for revset/opts...
r16550 $ hg rebase --rev 5 --source 4
abort: cannot specify both a revision and a source
[255]
$ hg rebase --base 5 --rev 4
abort: cannot specify both a revision and a base
[255]
Adrian Buehlmann
tests: unify test-rebase*
r12608 $ hg rebase
nothing to rebase
[1]
Nicolas Dumazet
tests: change test-rebase-parameters to use bundle/rebase.hg
r14122 $ hg up -q 7
Adrian Buehlmann
tests: unify test-rebase*
r12608
Pierre-Yves David
rebase: use revset as soon as possible in internal logic...
r15267 $ hg rebase --traceback
Adrian Buehlmann
tests: unify test-rebase*
r12608 nothing to rebase
[1]
These work:
Nicolas Dumazet
tests: change test-rebase-parameters to use bundle/rebase.hg
r14122 Rebase with no arguments (from 3 onto 8):
Adrian Buehlmann
tests: unify test-rebase*
r12608
Nicolas Dumazet
tests: change test-rebase-parameters to use bundle/rebase.hg
r14122 $ hg up -q -C 3
Adrian Buehlmann
tests: unify test-rebase*
r12608
$ hg rebase
Mads Kiilerich
tests: remove redundant globs...
r12640 saved backup bundle to $TESTTMP/a1/.hg/strip-backup/*-backup.hg (glob)
Adrian Buehlmann
tests: unify test-rebase*
r12608
$ hg tglog
Nicolas Dumazet
tests: change test-rebase-parameters to use bundle/rebase.hg
r14122 @ 8: 'D'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |
Nicolas Dumazet
tests: change test-rebase-parameters to use bundle/rebase.hg
r14122 o 7: 'C'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |
Nicolas Dumazet
tests: change test-rebase-parameters to use bundle/rebase.hg
r14122 o 6: 'B'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |
Nicolas Dumazet
tests: change test-rebase-parameters to use bundle/rebase.hg
r14122 o 5: 'I'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |
Nicolas Dumazet
tests: change test-rebase-parameters to use bundle/rebase.hg
r14122 o 4: 'H'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |
Nicolas Dumazet
tests: change test-rebase-parameters to use bundle/rebase.hg
r14122 | o 3: 'G'
|/|
o | 2: 'F'
| |
| o 1: 'E'
|/
o 0: 'A'
Adrian Buehlmann
tests: unify test-rebase*
r12608
Try to rollback after a rebase (fail):
$ hg rollback
no rollback information available
[1]
$ cd ..
Nicolas Dumazet
tests: change test-rebase-parameters to use bundle/rebase.hg
r14122 Rebase with base == '.' => same as no arguments (from 3 onto 8):
Adrian Buehlmann
tests: unify test-rebase*
r12608
Nicolas Dumazet
tests: change test-rebase-parameters to use bundle/rebase.hg
r14122 $ hg clone -q -u 3 a a2
Adrian Buehlmann
tests: unify test-rebase*
r12608 $ cd a2
$ hg rebase --base .
Mads Kiilerich
tests: remove redundant globs...
r12640 saved backup bundle to $TESTTMP/a2/.hg/strip-backup/*-backup.hg (glob)
Adrian Buehlmann
tests: unify test-rebase*
r12608
$ hg tglog
Nicolas Dumazet
tests: change test-rebase-parameters to use bundle/rebase.hg
r14122 @ 8: 'D'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |
Nicolas Dumazet
tests: change test-rebase-parameters to use bundle/rebase.hg
r14122 o 7: 'C'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |
Nicolas Dumazet
tests: change test-rebase-parameters to use bundle/rebase.hg
r14122 o 6: 'B'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |
Nicolas Dumazet
tests: change test-rebase-parameters to use bundle/rebase.hg
r14122 o 5: 'I'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |
Nicolas Dumazet
tests: change test-rebase-parameters to use bundle/rebase.hg
r14122 o 4: 'H'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |
Nicolas Dumazet
tests: change test-rebase-parameters to use bundle/rebase.hg
r14122 | o 3: 'G'
|/|
o | 2: 'F'
| |
| o 1: 'E'
|/
o 0: 'A'
Adrian Buehlmann
tests: unify test-rebase*
r12608
$ cd ..
Patrick Mezard
rebase: make --dest understand revsets
r16566 Rebase with dest == branch(.) => same as no arguments (from 3 onto 8):
Adrian Buehlmann
tests: unify test-rebase*
r12608
Nicolas Dumazet
tests: change test-rebase-parameters to use bundle/rebase.hg
r14122 $ hg clone -q -u 3 a a3
Adrian Buehlmann
tests: unify test-rebase*
r12608 $ cd a3
Patrick Mezard
rebase: make --dest understand revsets
r16566 $ hg rebase --dest 'branch(.)'
Mads Kiilerich
tests: remove redundant globs...
r12640 saved backup bundle to $TESTTMP/a3/.hg/strip-backup/*-backup.hg (glob)
Adrian Buehlmann
tests: unify test-rebase*
r12608
$ hg tglog
Nicolas Dumazet
tests: change test-rebase-parameters to use bundle/rebase.hg
r14122 @ 8: 'D'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |
Nicolas Dumazet
tests: change test-rebase-parameters to use bundle/rebase.hg
r14122 o 7: 'C'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |
Nicolas Dumazet
tests: change test-rebase-parameters to use bundle/rebase.hg
r14122 o 6: 'B'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |
Nicolas Dumazet
tests: change test-rebase-parameters to use bundle/rebase.hg
r14122 o 5: 'I'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |
Nicolas Dumazet
tests: change test-rebase-parameters to use bundle/rebase.hg
r14122 o 4: 'H'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |
Nicolas Dumazet
tests: change test-rebase-parameters to use bundle/rebase.hg
r14122 | o 3: 'G'
|/|
o | 2: 'F'
| |
| o 1: 'E'
|/
o 0: 'A'
Adrian Buehlmann
tests: unify test-rebase*
r12608
$ cd ..
Nicolas Dumazet
tests: change test-rebase-parameters to use bundle/rebase.hg
r14122 Specify only source (from 2 onto 8):
Adrian Buehlmann
tests: unify test-rebase*
r12608
$ hg clone -q -u . a a4
$ cd a4
Patrick Mezard
test-rebase-parameters: more tests for revset/opts...
r16550 $ hg rebase --source 'desc("C")'
Mads Kiilerich
tests: remove redundant globs...
r12640 saved backup bundle to $TESTTMP/a4/.hg/strip-backup/*-backup.hg (glob)
Adrian Buehlmann
tests: unify test-rebase*
r12608
$ hg tglog
Nicolas Dumazet
tests: change test-rebase-parameters to use bundle/rebase.hg
r14122 @ 8: 'D'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |
Pierre-Yves David
rebase: do not add second parent to rebased changeset (drop detach option) (BC)...
r17005 o 7: 'C'
|
o 6: 'I'
|
o 5: 'H'
|
| o 4: 'G'
|/|
o | 3: 'F'
Adrian Buehlmann
tests: unify test-rebase*
r12608 | |
Pierre-Yves David
rebase: do not add second parent to rebased changeset (drop detach option) (BC)...
r17005 | o 2: 'E'
|/
| o 1: 'B'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |/
Nicolas Dumazet
tests: change test-rebase-parameters to use bundle/rebase.hg
r14122 o 0: 'A'
Adrian Buehlmann
tests: unify test-rebase*
r12608
$ cd ..
Specify only dest (from 3 onto 6):
Nicolas Dumazet
tests: change test-rebase-parameters to use bundle/rebase.hg
r14122 $ hg clone -q -u 3 a a5
Adrian Buehlmann
tests: unify test-rebase*
r12608 $ cd a5
$ hg rebase --dest 6
Mads Kiilerich
tests: remove redundant globs...
r12640 saved backup bundle to $TESTTMP/a5/.hg/strip-backup/*-backup.hg (glob)
Adrian Buehlmann
tests: unify test-rebase*
r12608
$ hg tglog
Nicolas Dumazet
tests: change test-rebase-parameters to use bundle/rebase.hg
r14122 @ 8: 'D'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |
Nicolas Dumazet
tests: change test-rebase-parameters to use bundle/rebase.hg
r14122 o 7: 'C'
|
o 6: 'B'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |
Nicolas Dumazet
tests: change test-rebase-parameters to use bundle/rebase.hg
r14122 | o 5: 'I'
| |
| o 4: 'H'
| |
o | 3: 'G'
|\|
| o 2: 'F'
| |
o | 1: 'E'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |/
Nicolas Dumazet
tests: change test-rebase-parameters to use bundle/rebase.hg
r14122 o 0: 'A'
Adrian Buehlmann
tests: unify test-rebase*
r12608
$ cd ..
Nicolas Dumazet
tests: change test-rebase-parameters to use bundle/rebase.hg
r14122 Specify only base (from 1 onto 8):
Adrian Buehlmann
tests: unify test-rebase*
r12608
$ hg clone -q -u . a a6
$ cd a6
Patrick Mezard
test-rebase-parameters: more tests for revset/opts...
r16550 $ hg rebase --base 'desc("D")'
Mads Kiilerich
tests: remove redundant globs...
r12640 saved backup bundle to $TESTTMP/a6/.hg/strip-backup/*-backup.hg (glob)
Adrian Buehlmann
tests: unify test-rebase*
r12608
$ hg tglog
Nicolas Dumazet
tests: change test-rebase-parameters to use bundle/rebase.hg
r14122 @ 8: 'D'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |
Nicolas Dumazet
tests: change test-rebase-parameters to use bundle/rebase.hg
r14122 o 7: 'C'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |
Nicolas Dumazet
tests: change test-rebase-parameters to use bundle/rebase.hg
r14122 o 6: 'B'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |
Nicolas Dumazet
tests: change test-rebase-parameters to use bundle/rebase.hg
r14122 o 5: 'I'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |
Nicolas Dumazet
tests: change test-rebase-parameters to use bundle/rebase.hg
r14122 o 4: 'H'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |
Nicolas Dumazet
tests: change test-rebase-parameters to use bundle/rebase.hg
r14122 | o 3: 'G'
|/|
o | 2: 'F'
| |
| o 1: 'E'
|/
o 0: 'A'
Adrian Buehlmann
tests: unify test-rebase*
r12608
$ cd ..
Nicolas Dumazet
tests: change test-rebase-parameters to use bundle/rebase.hg
r14122 Specify source and dest (from 2 onto 7):
Adrian Buehlmann
tests: unify test-rebase*
r12608
$ hg clone -q -u . a a7
$ cd a7
Pierre-Yves David
rebase: do not add second parent to rebased changeset (drop detach option) (BC)...
r17005 $ hg rebase --source 2 --dest 7
Mads Kiilerich
tests: remove redundant globs...
r12640 saved backup bundle to $TESTTMP/a7/.hg/strip-backup/*-backup.hg (glob)
Adrian Buehlmann
tests: unify test-rebase*
r12608
$ hg tglog
Nicolas Dumazet
tests: change test-rebase-parameters to use bundle/rebase.hg
r14122 @ 8: 'D'
|
o 7: 'C'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |
Nicolas Dumazet
tests: change test-rebase-parameters to use bundle/rebase.hg
r14122 | o 6: 'I'
|/
o 5: 'H'
|
| o 4: 'G'
|/|
o | 3: 'F'
Adrian Buehlmann
tests: unify test-rebase*
r12608 | |
Nicolas Dumazet
tests: change test-rebase-parameters to use bundle/rebase.hg
r14122 | o 2: 'E'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |/
Nicolas Dumazet
tests: change test-rebase-parameters to use bundle/rebase.hg
r14122 | o 1: 'B'
|/
o 0: 'A'
Adrian Buehlmann
tests: unify test-rebase*
r12608
$ cd ..
Nicolas Dumazet
tests: change test-rebase-parameters to use bundle/rebase.hg
r14122 Specify base and dest (from 1 onto 7):
Adrian Buehlmann
tests: unify test-rebase*
r12608
$ hg clone -q -u . a a8
$ cd a8
Nicolas Dumazet
tests: change test-rebase-parameters to use bundle/rebase.hg
r14122 $ hg rebase --base 3 --dest 7
Mads Kiilerich
tests: remove redundant globs...
r12640 saved backup bundle to $TESTTMP/a8/.hg/strip-backup/*-backup.hg (glob)
Adrian Buehlmann
tests: unify test-rebase*
r12608
$ hg tglog
Nicolas Dumazet
tests: change test-rebase-parameters to use bundle/rebase.hg
r14122 @ 8: 'D'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |
Nicolas Dumazet
tests: change test-rebase-parameters to use bundle/rebase.hg
r14122 o 7: 'C'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |
Nicolas Dumazet
tests: change test-rebase-parameters to use bundle/rebase.hg
r14122 o 6: 'B'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |
Nicolas Dumazet
tests: change test-rebase-parameters to use bundle/rebase.hg
r14122 | o 5: 'I'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |/
Nicolas Dumazet
tests: change test-rebase-parameters to use bundle/rebase.hg
r14122 o 4: 'H'
Adrian Buehlmann
tests: unify test-rebase*
r12608 |
Nicolas Dumazet
tests: change test-rebase-parameters to use bundle/rebase.hg
r14122 | o 3: 'G'
|/|
o | 2: 'F'
| |
| o 1: 'E'
|/
o 0: 'A'
Adrian Buehlmann
tests: unify test-rebase*
r12608
$ cd ..
Patrick Mezard
test-rebase-parameters: more tests for revset/opts...
r16550
Specify only revs (from 2 onto 8)
$ hg clone -q -u . a a9
$ cd a9
$ hg rebase --rev 'desc("C")::'
saved backup bundle to $TESTTMP/a9/.hg/strip-backup/*-backup.hg (glob)
$ hg tglog
@ 8: 'D'
|
Pierre-Yves David
rebase: do not add second parent to rebased changeset (drop detach option) (BC)...
r17005 o 7: 'C'
|
o 6: 'I'
|
o 5: 'H'
|
| o 4: 'G'
|/|
o | 3: 'F'
Patrick Mezard
test-rebase-parameters: more tests for revset/opts...
r16550 | |
Pierre-Yves David
rebase: do not add second parent to rebased changeset (drop detach option) (BC)...
r17005 | o 2: 'E'
|/
| o 1: 'B'
Patrick Mezard
test-rebase-parameters: more tests for revset/opts...
r16550 |/
o 0: 'A'
$ cd ..
Stefano Tortarolo
rebase: add --tool argument for specifying merge tool
r13856 Test --tool parameter:
$ hg init b
$ cd b
$ echo c1 > c1
$ hg ci -Am c1
adding c1
$ echo c2 > c2
$ hg ci -Am c2
adding c2
$ hg up -q 0
$ echo c2b > c2
$ hg ci -Am c2b
adding c2
created new head
$ cd ..
$ hg clone -q -u . b b1
$ cd b1
$ hg rebase -s 2 -d 1 --tool internal:local
saved backup bundle to $TESTTMP/b1/.hg/strip-backup/*-backup.hg (glob)
$ hg cat c2
c2
$ cd ..
$ hg clone -q -u . b b2
$ cd b2
$ hg rebase -s 2 -d 1 --tool internal:other
saved backup bundle to $TESTTMP/b2/.hg/strip-backup/*-backup.hg (glob)
$ hg cat c2
c2b
$ cd ..
$ hg clone -q -u . b b3
$ cd b3
$ hg rebase -s 2 -d 1 --tool internal:fail
abort: unresolved conflicts (see hg resolve, then hg rebase --continue)
[255]
$ hg resolve -l
U c2
$ hg resolve -m c2
$ hg rebase -c --tool internal:fail
tool option will be ignored
saved backup bundle to $TESTTMP/b3/.hg/strip-backup/*-backup.hg (glob)
Mads Kiilerich
tests: add missing trailing 'cd ..'...
r16913 $ cd ..