annotate tests/test-rebase-scenario-global.t @ 33116:6c113a7dec52

tests: use the system hg for examining the local repository Most test scripts use "hg" to interact with a temporary test repository. However a few tests also want to run hg commands to interact with the local repository containing the mercurial source code. Notably, many of the test-check-* tests want to check local files and commit messages. These tests were previously using the version of hg being tested to query the source repository. However, this will fail if the source repository requires extensions or other settings not supported by the version of mercurial being tested. The source repository was typically initially cloned using the system hg installation, so we should use the system hg installation to query it. There was already a helpers-testrepo.sh script designed to help cope with different requirements for the source repository versus the test repositories. However, it only handled the evolve extension. This new behavior works with any extensions that are different between the system installation and the test installation.
author Adam Simpkins <simpkins@fb.com>
date Tue, 27 Jun 2017 17:24:31 -0700
parents 2312e70cf78b
children 40ee74bfa111
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
1 $ cat >> $HGRCPATH <<EOF
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
2 > [extensions]
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
3 > rebase=
33055
be3584712b20 test-rebase: add a test showing rebasestate left behind
Jun Wu <quark@fb.com>
parents: 31514
diff changeset
4 > drawdag=$TESTDIR/drawdag.py
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
5 >
15742
65df60a3f96b phases: prevent rebase to rebase immutable changeset.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15447
diff changeset
6 > [phases]
65df60a3f96b phases: prevent rebase to rebase immutable changeset.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15447
diff changeset
7 > publish=False
65df60a3f96b phases: prevent rebase to rebase immutable changeset.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15447
diff changeset
8 >
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
9 > [alias]
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
10 > tglog = log -G --template "{rev}: '{desc}' {branches}\n"
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
11 > EOF
6906
808f03f61ebe Add rebase extension
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
12
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
13
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
14 $ hg init a
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
15 $ cd a
16350
4f795f5fbb0b tests: make tests work if directory contains special characters
Thomas Arendsen Hein <thomas@intevation.de>
parents: 15945
diff changeset
16 $ hg unbundle "$TESTDIR/bundles/rebase.hg"
14118
7fd8e597f99c tests: introduce a rebase bundle to use with rebase tests
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 12640
diff changeset
17 adding changesets
7fd8e597f99c tests: introduce a rebase bundle to use with rebase tests
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 12640
diff changeset
18 adding manifests
7fd8e597f99c tests: introduce a rebase bundle to use with rebase tests
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 12640
diff changeset
19 adding file changes
14119
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
20 added 8 changesets with 7 changes to 7 files (+2 heads)
14118
7fd8e597f99c tests: introduce a rebase bundle to use with rebase tests
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 12640
diff changeset
21 (run 'hg heads' to see heads, 'hg merge' to merge)
7fd8e597f99c tests: introduce a rebase bundle to use with rebase tests
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 12640
diff changeset
22 $ hg up tip
7fd8e597f99c tests: introduce a rebase bundle to use with rebase tests
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 12640
diff changeset
23 3 files updated, 0 files merged, 0 files removed, 0 files unresolved
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
24 $ cd ..
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
25
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
26
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
27 Rebasing
14119
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
28 D onto H - simple rebase:
28022
e397b58c0563 rebase: respect checkunknown and checkignored in more cases
Siddharth Agarwal <sid0@fb.com>
parents: 26719
diff changeset
29 (this also tests that editor is invoked if '--edit' is specified, and that we
e397b58c0563 rebase: respect checkunknown and checkignored in more cases
Siddharth Agarwal <sid0@fb.com>
parents: 26719
diff changeset
30 can abort or warn for colliding untracked files)
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
31
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
32 $ hg clone -q -u . a a1
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
33 $ cd a1
6906
808f03f61ebe Add rebase extension
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
34
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
35 $ hg tglog
14119
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
36 @ 7: 'H'
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
37 |
14119
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
38 | o 6: 'G'
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
39 |/|
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
40 o | 5: 'F'
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
41 | |
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
42 | o 4: 'E'
14119
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
43 |/
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
44 | o 3: 'D'
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
45 | |
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
46 | o 2: 'C'
14119
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
47 | |
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
48 | o 1: 'B'
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
49 |/
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
50 o 0: 'A'
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
51
14119
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
52
21410
5b70ece79ea7 rebase: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
53 $ hg status --rev "3^1" --rev 3
5b70ece79ea7 rebase: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
54 A D
28022
e397b58c0563 rebase: respect checkunknown and checkignored in more cases
Siddharth Agarwal <sid0@fb.com>
parents: 26719
diff changeset
55 $ echo collide > D
e397b58c0563 rebase: respect checkunknown and checkignored in more cases
Siddharth Agarwal <sid0@fb.com>
parents: 26719
diff changeset
56 $ HGEDITOR=cat hg rebase -s 3 -d 7 --edit --config merge.checkunknown=warn
23517
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
57 rebasing 3:32af7686d403 "D"
28022
e397b58c0563 rebase: respect checkunknown and checkignored in more cases
Siddharth Agarwal <sid0@fb.com>
parents: 26719
diff changeset
58 D: replacing untracked file
21410
5b70ece79ea7 rebase: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
59 D
5b70ece79ea7 rebase: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
60
5b70ece79ea7 rebase: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
61
5b70ece79ea7 rebase: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
62 HG: Enter commit message. Lines beginning with 'HG:' are removed.
5b70ece79ea7 rebase: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
63 HG: Leave message empty to abort commit.
5b70ece79ea7 rebase: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
64 HG: --
5b70ece79ea7 rebase: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
65 HG: user: Nicolas Dumazet <nicdumz.commits@gmail.com>
5b70ece79ea7 rebase: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21024
diff changeset
66 HG: branch 'default'
22895
dfa44e25bb53 dirstate: properly clean-up some more merge state on setparents
Matt Mackall <mpm@selenic.com>
parents: 22183
diff changeset
67 HG: added D
23835
aa4a1672583e bundles: do not overwrite existing backup bundles (BC)
Durham Goode <durham@fb.com>
parents: 23518
diff changeset
68 saved backup bundle to $TESTTMP/a1/.hg/strip-backup/32af7686d403-6f7dface-backup.hg (glob)
28022
e397b58c0563 rebase: respect checkunknown and checkignored in more cases
Siddharth Agarwal <sid0@fb.com>
parents: 26719
diff changeset
69 $ cat D.orig
e397b58c0563 rebase: respect checkunknown and checkignored in more cases
Siddharth Agarwal <sid0@fb.com>
parents: 26719
diff changeset
70 collide
e397b58c0563 rebase: respect checkunknown and checkignored in more cases
Siddharth Agarwal <sid0@fb.com>
parents: 26719
diff changeset
71 $ rm D.orig
6906
808f03f61ebe Add rebase extension
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
72
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
73 $ hg tglog
19925
9c78ed396075 rebase: preserve working directory parent (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 19059
diff changeset
74 o 7: 'D'
17005
50f434510da6 rebase: do not add second parent to rebased changeset (drop detach option) (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16540
diff changeset
75 |
19925
9c78ed396075 rebase: preserve working directory parent (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 19059
diff changeset
76 @ 6: 'H'
17005
50f434510da6 rebase: do not add second parent to rebased changeset (drop detach option) (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16540
diff changeset
77 |
50f434510da6 rebase: do not add second parent to rebased changeset (drop detach option) (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16540
diff changeset
78 | o 5: 'G'
50f434510da6 rebase: do not add second parent to rebased changeset (drop detach option) (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16540
diff changeset
79 |/|
50f434510da6 rebase: do not add second parent to rebased changeset (drop detach option) (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16540
diff changeset
80 o | 4: 'F'
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
81 | |
17005
50f434510da6 rebase: do not add second parent to rebased changeset (drop detach option) (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16540
diff changeset
82 | o 3: 'E'
50f434510da6 rebase: do not add second parent to rebased changeset (drop detach option) (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16540
diff changeset
83 |/
50f434510da6 rebase: do not add second parent to rebased changeset (drop detach option) (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16540
diff changeset
84 | o 2: 'C'
14119
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
85 | |
17005
50f434510da6 rebase: do not add second parent to rebased changeset (drop detach option) (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16540
diff changeset
86 | o 1: 'B'
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
87 |/
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
88 o 0: 'A'
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
89
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
90 $ cd ..
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
91
6906
808f03f61ebe Add rebase extension
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
92
14119
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
93 D onto F - intermediate point:
28022
e397b58c0563 rebase: respect checkunknown and checkignored in more cases
Siddharth Agarwal <sid0@fb.com>
parents: 26719
diff changeset
94 (this also tests that editor is not invoked if '--edit' is not specified, and
e397b58c0563 rebase: respect checkunknown and checkignored in more cases
Siddharth Agarwal <sid0@fb.com>
parents: 26719
diff changeset
95 that we can ignore for colliding untracked files)
6906
808f03f61ebe Add rebase extension
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
96
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
97 $ hg clone -q -u . a a2
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
98 $ cd a2
28022
e397b58c0563 rebase: respect checkunknown and checkignored in more cases
Siddharth Agarwal <sid0@fb.com>
parents: 26719
diff changeset
99 $ echo collide > D
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
100
28022
e397b58c0563 rebase: respect checkunknown and checkignored in more cases
Siddharth Agarwal <sid0@fb.com>
parents: 26719
diff changeset
101 $ HGEDITOR=cat hg rebase -s 3 -d 5 --config merge.checkunknown=ignore
23517
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
102 rebasing 3:32af7686d403 "D"
23835
aa4a1672583e bundles: do not overwrite existing backup bundles (BC)
Durham Goode <durham@fb.com>
parents: 23518
diff changeset
103 saved backup bundle to $TESTTMP/a2/.hg/strip-backup/32af7686d403-6f7dface-backup.hg (glob)
28022
e397b58c0563 rebase: respect checkunknown and checkignored in more cases
Siddharth Agarwal <sid0@fb.com>
parents: 26719
diff changeset
104 $ cat D.orig
e397b58c0563 rebase: respect checkunknown and checkignored in more cases
Siddharth Agarwal <sid0@fb.com>
parents: 26719
diff changeset
105 collide
e397b58c0563 rebase: respect checkunknown and checkignored in more cases
Siddharth Agarwal <sid0@fb.com>
parents: 26719
diff changeset
106 $ rm D.orig
6906
808f03f61ebe Add rebase extension
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
107
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
108 $ hg tglog
19925
9c78ed396075 rebase: preserve working directory parent (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 19059
diff changeset
109 o 7: 'D'
17005
50f434510da6 rebase: do not add second parent to rebased changeset (drop detach option) (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16540
diff changeset
110 |
19925
9c78ed396075 rebase: preserve working directory parent (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 19059
diff changeset
111 | @ 6: 'H'
17005
50f434510da6 rebase: do not add second parent to rebased changeset (drop detach option) (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16540
diff changeset
112 |/
50f434510da6 rebase: do not add second parent to rebased changeset (drop detach option) (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16540
diff changeset
113 | o 5: 'G'
50f434510da6 rebase: do not add second parent to rebased changeset (drop detach option) (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16540
diff changeset
114 |/|
50f434510da6 rebase: do not add second parent to rebased changeset (drop detach option) (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16540
diff changeset
115 o | 4: 'F'
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
116 | |
17005
50f434510da6 rebase: do not add second parent to rebased changeset (drop detach option) (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16540
diff changeset
117 | o 3: 'E'
50f434510da6 rebase: do not add second parent to rebased changeset (drop detach option) (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16540
diff changeset
118 |/
50f434510da6 rebase: do not add second parent to rebased changeset (drop detach option) (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16540
diff changeset
119 | o 2: 'C'
50f434510da6 rebase: do not add second parent to rebased changeset (drop detach option) (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16540
diff changeset
120 | |
50f434510da6 rebase: do not add second parent to rebased changeset (drop detach option) (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16540
diff changeset
121 | o 1: 'B'
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
122 |/
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
123 o 0: 'A'
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
124
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
125 $ cd ..
6906
808f03f61ebe Add rebase extension
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
126
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
127
14119
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
128 E onto H - skip of G:
28022
e397b58c0563 rebase: respect checkunknown and checkignored in more cases
Siddharth Agarwal <sid0@fb.com>
parents: 26719
diff changeset
129 (this also tests that we can overwrite untracked files and don't create backups
e397b58c0563 rebase: respect checkunknown and checkignored in more cases
Siddharth Agarwal <sid0@fb.com>
parents: 26719
diff changeset
130 if they have the same contents)
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
131
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
132 $ hg clone -q -u . a a3
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
133 $ cd a3
28022
e397b58c0563 rebase: respect checkunknown and checkignored in more cases
Siddharth Agarwal <sid0@fb.com>
parents: 26719
diff changeset
134 $ hg cat -r 4 E | tee E
e397b58c0563 rebase: respect checkunknown and checkignored in more cases
Siddharth Agarwal <sid0@fb.com>
parents: 26719
diff changeset
135 E
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
136
14119
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
137 $ hg rebase -s 4 -d 7
23517
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
138 rebasing 4:9520eea781bc "E"
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
139 rebasing 6:eea13746799a "G"
23518
2fb0504b8175 rebase: show warning when rebase creates no changes to commit
Mads Kiilerich <madski@unity3d.com>
parents: 23517
diff changeset
140 note: rebase of 6:eea13746799a created no changes to commit
23835
aa4a1672583e bundles: do not overwrite existing backup bundles (BC)
Durham Goode <durham@fb.com>
parents: 23518
diff changeset
141 saved backup bundle to $TESTTMP/a3/.hg/strip-backup/9520eea781bc-fcd8edd4-backup.hg (glob)
28022
e397b58c0563 rebase: respect checkunknown and checkignored in more cases
Siddharth Agarwal <sid0@fb.com>
parents: 26719
diff changeset
142 $ f E.orig
e397b58c0563 rebase: respect checkunknown and checkignored in more cases
Siddharth Agarwal <sid0@fb.com>
parents: 26719
diff changeset
143 E.orig: file not found
6906
808f03f61ebe Add rebase extension
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
144
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
145 $ hg tglog
19925
9c78ed396075 rebase: preserve working directory parent (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 19059
diff changeset
146 o 6: 'E'
14119
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
147 |
19925
9c78ed396075 rebase: preserve working directory parent (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 19059
diff changeset
148 @ 5: 'H'
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
149 |
14119
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
150 o 4: 'F'
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
151 |
14119
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
152 | o 3: 'D'
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
153 | |
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
154 | o 2: 'C'
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
155 | |
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
156 | o 1: 'B'
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
157 |/
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
158 o 0: 'A'
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
159
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
160 $ cd ..
6906
808f03f61ebe Add rebase extension
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
161
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
162
14119
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
163 F onto E - rebase of a branching point (skip G):
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
164
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
165 $ hg clone -q -u . a a4
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
166 $ cd a4
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
167
14119
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
168 $ hg rebase -s 5 -d 4
23517
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
169 rebasing 5:24b6387c8c8c "F"
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
170 rebasing 6:eea13746799a "G"
23518
2fb0504b8175 rebase: show warning when rebase creates no changes to commit
Mads Kiilerich <madski@unity3d.com>
parents: 23517
diff changeset
171 note: rebase of 6:eea13746799a created no changes to commit
23517
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
172 rebasing 7:02de42196ebe "H" (tip)
23835
aa4a1672583e bundles: do not overwrite existing backup bundles (BC)
Durham Goode <durham@fb.com>
parents: 23518
diff changeset
173 saved backup bundle to $TESTTMP/a4/.hg/strip-backup/24b6387c8c8c-c3fe765d-backup.hg (glob)
6906
808f03f61ebe Add rebase extension
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
174
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
175 $ hg tglog
14119
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
176 @ 6: 'H'
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
177 |
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
178 o 5: 'F'
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
179 |
14119
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
180 o 4: 'E'
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
181 |
14119
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
182 | o 3: 'D'
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
183 | |
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
184 | o 2: 'C'
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
185 | |
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
186 | o 1: 'B'
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
187 |/
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
188 o 0: 'A'
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
189
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
190 $ cd ..
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
191
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
192
14119
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
193 G onto H - merged revision having a parent in ancestors of target:
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
194
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
195 $ hg clone -q -u . a a5
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
196 $ cd a5
6906
808f03f61ebe Add rebase extension
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
197
14119
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
198 $ hg rebase -s 6 -d 7
23517
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
199 rebasing 6:eea13746799a "G"
23835
aa4a1672583e bundles: do not overwrite existing backup bundles (BC)
Durham Goode <durham@fb.com>
parents: 23518
diff changeset
200 saved backup bundle to $TESTTMP/a5/.hg/strip-backup/eea13746799a-883828ed-backup.hg (glob)
6906
808f03f61ebe Add rebase extension
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
201
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
202 $ hg tglog
19925
9c78ed396075 rebase: preserve working directory parent (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 19059
diff changeset
203 o 7: 'G'
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
204 |\
19925
9c78ed396075 rebase: preserve working directory parent (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 19059
diff changeset
205 | @ 6: 'H'
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
206 | |
14119
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
207 | o 5: 'F'
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
208 | |
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
209 o | 4: 'E'
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
210 |/
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
211 | o 3: 'D'
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
212 | |
14119
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
213 | o 2: 'C'
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
214 | |
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
215 | o 1: 'B'
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
216 |/
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
217 o 0: 'A'
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
218
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
219 $ cd ..
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
220
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
221
14119
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
222 F onto B - G maintains E as parent:
6906
808f03f61ebe Add rebase extension
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
223
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
224 $ hg clone -q -u . a a6
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
225 $ cd a6
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
226
14119
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
227 $ hg rebase -s 5 -d 1
23517
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
228 rebasing 5:24b6387c8c8c "F"
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
229 rebasing 6:eea13746799a "G"
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
230 rebasing 7:02de42196ebe "H" (tip)
23835
aa4a1672583e bundles: do not overwrite existing backup bundles (BC)
Durham Goode <durham@fb.com>
parents: 23518
diff changeset
231 saved backup bundle to $TESTTMP/a6/.hg/strip-backup/24b6387c8c8c-c3fe765d-backup.hg (glob)
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
232
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
233 $ hg tglog
14119
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
234 @ 7: 'H'
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
235 |
14119
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
236 | o 6: 'G'
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
237 |/|
14119
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
238 o | 5: 'F'
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
239 | |
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
240 | o 4: 'E'
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
241 | |
14119
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
242 | | o 3: 'D'
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
243 | | |
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
244 +---o 2: 'C'
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
245 | |
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
246 o | 1: 'B'
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
247 |/
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
248 o 0: 'A'
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
249
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
250 $ cd ..
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
251
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
252
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
253 These will fail (using --source):
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
254
14119
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
255 G onto F - rebase onto an ancestor:
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
256
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
257 $ hg clone -q -u . a a7
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
258 $ cd a7
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
259
14119
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
260 $ hg rebase -s 6 -d 5
15267
3bfdfefea2fc rebase: use revset as soon as possible in internal logic
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15132
diff changeset
261 nothing to rebase
3bfdfefea2fc rebase: use revset as soon as possible in internal logic
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15132
diff changeset
262 [1]
6906
808f03f61ebe Add rebase extension
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
263
14119
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
264 F onto G - rebase onto a descendant:
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
265
14119
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
266 $ hg rebase -s 5 -d 6
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
267 abort: source is ancestor of destination
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
268 [255]
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
269
14119
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
270 G onto B - merge revision with both parents not in ancestors of target:
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
271
14119
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
272 $ hg rebase -s 6 -d 1
23517
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
273 rebasing 6:eea13746799a "G"
31514
2519994d25ca rebase: use one dirstateguard for entire rebase
Durham Goode <durham@fb.com>
parents: 31302
diff changeset
274 transaction abort!
2519994d25ca rebase: use one dirstateguard for entire rebase
Durham Goode <durham@fb.com>
parents: 31302
diff changeset
275 rollback completed
14119
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
276 abort: cannot use revision 6 as base, result would have 3 parents
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
277 [255]
31225
749b057b01f3 rebase: allow aborting if last-message.txt is missing
Durham Goode <durham@fb.com>
parents: 31143
diff changeset
278 $ hg rebase --abort
749b057b01f3 rebase: allow aborting if last-message.txt is missing
Durham Goode <durham@fb.com>
parents: 31143
diff changeset
279 rebase aborted
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
280
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
281 These will abort gracefully (using --base):
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
282
14119
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
283 G onto G - rebase onto same changeset:
6906
808f03f61ebe Add rebase extension
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
284
14119
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
285 $ hg rebase -b 6 -d 6
20249
dc5157841361 rebase: improve error message for --base being empty or causing emptiness
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
286 nothing to rebase - eea13746799a is both "base" and destination
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
287 [1]
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
288
14119
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
289 G onto F - rebase onto an ancestor:
9578
341182ac95e4 rebase: return early when source is descendant of destination
Sune Foldager <cryo@cyanite.org>
parents: 8168
diff changeset
290
14119
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
291 $ hg rebase -b 6 -d 5
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
292 nothing to rebase
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
293 [1]
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
294
14119
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
295 F onto G - rebase onto a descendant:
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
296
14119
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
297 $ hg rebase -b 5 -d 6
20249
dc5157841361 rebase: improve error message for --base being empty or causing emptiness
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
298 nothing to rebase - "base" 24b6387c8c8c is already an ancestor of destination eea13746799a
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
299 [1]
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
300
15132
81f76098211e rebase: allow rebase to ancestor (issue3010)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 14119
diff changeset
301 C onto A - rebase onto an ancestor:
81f76098211e rebase: allow rebase to ancestor (issue3010)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 14119
diff changeset
302
81f76098211e rebase: allow rebase to ancestor (issue3010)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 14119
diff changeset
303 $ hg rebase -d 0 -s 2
23517
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
304 rebasing 2:5fddd98957c8 "C"
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
305 rebasing 3:32af7686d403 "D"
23835
aa4a1672583e bundles: do not overwrite existing backup bundles (BC)
Durham Goode <durham@fb.com>
parents: 23518
diff changeset
306 saved backup bundle to $TESTTMP/a7/.hg/strip-backup/5fddd98957c8-f9244fa1-backup.hg (glob)
15132
81f76098211e rebase: allow rebase to ancestor (issue3010)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 14119
diff changeset
307 $ hg tglog
19925
9c78ed396075 rebase: preserve working directory parent (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 19059
diff changeset
308 o 7: 'D'
15132
81f76098211e rebase: allow rebase to ancestor (issue3010)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 14119
diff changeset
309 |
81f76098211e rebase: allow rebase to ancestor (issue3010)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 14119
diff changeset
310 o 6: 'C'
81f76098211e rebase: allow rebase to ancestor (issue3010)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 14119
diff changeset
311 |
19925
9c78ed396075 rebase: preserve working directory parent (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 19059
diff changeset
312 | @ 5: 'H'
15132
81f76098211e rebase: allow rebase to ancestor (issue3010)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 14119
diff changeset
313 | |
81f76098211e rebase: allow rebase to ancestor (issue3010)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 14119
diff changeset
314 | | o 4: 'G'
81f76098211e rebase: allow rebase to ancestor (issue3010)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 14119
diff changeset
315 | |/|
81f76098211e rebase: allow rebase to ancestor (issue3010)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 14119
diff changeset
316 | o | 3: 'F'
81f76098211e rebase: allow rebase to ancestor (issue3010)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 14119
diff changeset
317 |/ /
81f76098211e rebase: allow rebase to ancestor (issue3010)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 14119
diff changeset
318 | o 2: 'E'
81f76098211e rebase: allow rebase to ancestor (issue3010)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 14119
diff changeset
319 |/
81f76098211e rebase: allow rebase to ancestor (issue3010)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 14119
diff changeset
320 | o 1: 'B'
81f76098211e rebase: allow rebase to ancestor (issue3010)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 14119
diff changeset
321 |/
81f76098211e rebase: allow rebase to ancestor (issue3010)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 14119
diff changeset
322 o 0: 'A'
81f76098211e rebase: allow rebase to ancestor (issue3010)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 14119
diff changeset
323
15742
65df60a3f96b phases: prevent rebase to rebase immutable changeset.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15447
diff changeset
324
65df60a3f96b phases: prevent rebase to rebase immutable changeset.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15447
diff changeset
325 Check rebasing public changeset
65df60a3f96b phases: prevent rebase to rebase immutable changeset.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15447
diff changeset
326
65df60a3f96b phases: prevent rebase to rebase immutable changeset.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15447
diff changeset
327 $ hg pull --config phases.publish=True -q -r 6 . # update phase of 6
19059
53eadcb814fd rebase: check no-op before checking phase (issue3891)
Siddharth Agarwal <sid0@fb.com>
parents: 18644
diff changeset
328 $ hg rebase -d 0 -b 6
53eadcb814fd rebase: check no-op before checking phase (issue3891)
Siddharth Agarwal <sid0@fb.com>
parents: 18644
diff changeset
329 nothing to rebase
53eadcb814fd rebase: check no-op before checking phase (issue3891)
Siddharth Agarwal <sid0@fb.com>
parents: 18644
diff changeset
330 [1]
15742
65df60a3f96b phases: prevent rebase to rebase immutable changeset.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15447
diff changeset
331 $ hg rebase -d 5 -b 6
25411
d298805fb639 phases: rewrite "immutable changeset" to "public changeset"
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 25025
diff changeset
332 abort: can't rebase public changeset e1c4361dd923
29966
11604da46982 rebase: use single quotes in use warning
timeless <timeless@mozdev.org>
parents: 28189
diff changeset
333 (see 'hg help phases' for details)
15742
65df60a3f96b phases: prevent rebase to rebase immutable changeset.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15447
diff changeset
334 [255]
31302
681046de87f1 rebase: abort if *any* commit in rebase set is public
Martin von Zweigbergk <martinvonz@google.com>
parents: 31225
diff changeset
335 $ hg rebase -d 5 -r '1 + (6::)'
681046de87f1 rebase: abort if *any* commit in rebase set is public
Martin von Zweigbergk <martinvonz@google.com>
parents: 31225
diff changeset
336 abort: can't rebase public changeset e1c4361dd923
681046de87f1 rebase: abort if *any* commit in rebase set is public
Martin von Zweigbergk <martinvonz@google.com>
parents: 31225
diff changeset
337 (see 'hg help phases' for details)
681046de87f1 rebase: abort if *any* commit in rebase set is public
Martin von Zweigbergk <martinvonz@google.com>
parents: 31225
diff changeset
338 [255]
15742
65df60a3f96b phases: prevent rebase to rebase immutable changeset.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15447
diff changeset
339
65df60a3f96b phases: prevent rebase to rebase immutable changeset.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15447
diff changeset
340 $ hg rebase -d 5 -b 6 --keep
23517
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
341 rebasing 6:e1c4361dd923 "C"
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
342 rebasing 7:c9659aac0000 "D" (tip)
15917
e66084ef8449 rebase: fix phases movement
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
parents: 15742
diff changeset
343
e66084ef8449 rebase: fix phases movement
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
parents: 15742
diff changeset
344 Check rebasing mutable changeset
e66084ef8449 rebase: fix phases movement
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
parents: 15742
diff changeset
345 Source phase greater or equal to destination phase: new changeset get the phase of source:
23440
57d35d3c1cf1 rebase: ignore negative state when updating back to original wc parent
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22895
diff changeset
346 $ hg id -n
57d35d3c1cf1 rebase: ignore negative state when updating back to original wc parent
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22895
diff changeset
347 5
15917
e66084ef8449 rebase: fix phases movement
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
parents: 15742
diff changeset
348 $ hg rebase -s9 -d0
23517
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
349 rebasing 9:2b23e52411f4 "D" (tip)
23835
aa4a1672583e bundles: do not overwrite existing backup bundles (BC)
Durham Goode <durham@fb.com>
parents: 23518
diff changeset
350 saved backup bundle to $TESTTMP/a7/.hg/strip-backup/2b23e52411f4-f942decf-backup.hg (glob)
23440
57d35d3c1cf1 rebase: ignore negative state when updating back to original wc parent
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22895
diff changeset
351 $ hg id -n # check we updated back to parent
57d35d3c1cf1 rebase: ignore negative state when updating back to original wc parent
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 22895
diff changeset
352 5
15917
e66084ef8449 rebase: fix phases movement
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
parents: 15742
diff changeset
353 $ hg log --template "{phase}\n" -r 9
e66084ef8449 rebase: fix phases movement
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
parents: 15742
diff changeset
354 draft
e66084ef8449 rebase: fix phases movement
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
parents: 15742
diff changeset
355 $ hg rebase -s9 -d1
23517
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
356 rebasing 9:2cb10d0cfc6c "D" (tip)
23835
aa4a1672583e bundles: do not overwrite existing backup bundles (BC)
Durham Goode <durham@fb.com>
parents: 23518
diff changeset
357 saved backup bundle to $TESTTMP/a7/.hg/strip-backup/2cb10d0cfc6c-ddb0f256-backup.hg (glob)
15917
e66084ef8449 rebase: fix phases movement
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
parents: 15742
diff changeset
358 $ hg log --template "{phase}\n" -r 9
e66084ef8449 rebase: fix phases movement
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
parents: 15742
diff changeset
359 draft
e66084ef8449 rebase: fix phases movement
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
parents: 15742
diff changeset
360 $ hg phase --force --secret 9
e66084ef8449 rebase: fix phases movement
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
parents: 15742
diff changeset
361 $ hg rebase -s9 -d0
23517
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
362 rebasing 9:c5b12b67163a "D" (tip)
23835
aa4a1672583e bundles: do not overwrite existing backup bundles (BC)
Durham Goode <durham@fb.com>
parents: 23518
diff changeset
363 saved backup bundle to $TESTTMP/a7/.hg/strip-backup/c5b12b67163a-4e372053-backup.hg (glob)
15917
e66084ef8449 rebase: fix phases movement
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
parents: 15742
diff changeset
364 $ hg log --template "{phase}\n" -r 9
e66084ef8449 rebase: fix phases movement
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
parents: 15742
diff changeset
365 secret
e66084ef8449 rebase: fix phases movement
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
parents: 15742
diff changeset
366 $ hg rebase -s9 -d1
23517
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
367 rebasing 9:2a0524f868ac "D" (tip)
23835
aa4a1672583e bundles: do not overwrite existing backup bundles (BC)
Durham Goode <durham@fb.com>
parents: 23518
diff changeset
368 saved backup bundle to $TESTTMP/a7/.hg/strip-backup/2a0524f868ac-cefd8574-backup.hg (glob)
15917
e66084ef8449 rebase: fix phases movement
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
parents: 15742
diff changeset
369 $ hg log --template "{phase}\n" -r 9
e66084ef8449 rebase: fix phases movement
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
parents: 15742
diff changeset
370 secret
e66084ef8449 rebase: fix phases movement
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
parents: 15742
diff changeset
371 Source phase lower than destination phase: new changeset get the phase of destination:
17005
50f434510da6 rebase: do not add second parent to rebased changeset (drop detach option) (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16540
diff changeset
372 $ hg rebase -s8 -d9
23517
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
373 rebasing 8:6d4f22462821 "C"
23835
aa4a1672583e bundles: do not overwrite existing backup bundles (BC)
Durham Goode <durham@fb.com>
parents: 23518
diff changeset
374 saved backup bundle to $TESTTMP/a7/.hg/strip-backup/6d4f22462821-3441f70b-backup.hg (glob)
17005
50f434510da6 rebase: do not add second parent to rebased changeset (drop detach option) (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16540
diff changeset
375 $ hg log --template "{phase}\n" -r 'rev(9)'
15917
e66084ef8449 rebase: fix phases movement
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
parents: 15742
diff changeset
376 secret
e66084ef8449 rebase: fix phases movement
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
parents: 15742
diff changeset
377
15270
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
378 $ cd ..
15132
81f76098211e rebase: allow rebase to ancestor (issue3010)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 14119
diff changeset
379
15270
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
380 Test for revset
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
381
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
382 We need a bit different graph
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
383 All destination are B
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
384
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
385 $ hg init ah
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
386 $ cd ah
16350
4f795f5fbb0b tests: make tests work if directory contains special characters
Thomas Arendsen Hein <thomas@intevation.de>
parents: 15945
diff changeset
387 $ hg unbundle "$TESTDIR/bundles/rebase-revset.hg"
15270
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
388 adding changesets
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
389 adding manifests
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
390 adding file changes
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
391 added 9 changesets with 9 changes to 9 files (+2 heads)
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
392 (run 'hg heads' to see heads, 'hg merge' to merge)
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
393 $ hg tglog
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
394 o 8: 'I'
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
395 |
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
396 o 7: 'H'
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
397 |
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
398 o 6: 'G'
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
399 |
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
400 | o 5: 'F'
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
401 | |
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
402 | o 4: 'E'
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
403 |/
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
404 o 3: 'D'
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
405 |
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
406 o 2: 'C'
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
407 |
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
408 | o 1: 'B'
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
409 |/
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
410 o 0: 'A'
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
411
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
412 $ cd ..
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
413
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
414
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
415 Simple case with keep:
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
416
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
417 Source on have two descendant heads but ask for one
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
418
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
419 $ hg clone -q -u . ah ah1
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
420 $ cd ah1
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
421 $ hg rebase -r '2::8' -d 1
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
422 abort: can't remove original changesets with unrebased descendants
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
423 (use --keep to keep original changesets)
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
424 [255]
25025
72f7f98bc5e5 rebase: add short -k option for --keep
Nat Mote <nmote@fb.com>
parents: 23917
diff changeset
425 $ hg rebase -r '2::8' -d 1 -k
23517
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
426 rebasing 2:c9e50f6cdc55 "C"
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
427 rebasing 3:ffd453c31098 "D"
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
428 rebasing 6:3d8a618087a7 "G"
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
429 rebasing 7:72434a4e60b0 "H"
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
430 rebasing 8:479ddb54a924 "I" (tip)
15270
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
431 $ hg tglog
19925
9c78ed396075 rebase: preserve working directory parent (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 19059
diff changeset
432 o 13: 'I'
15270
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
433 |
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
434 o 12: 'H'
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
435 |
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
436 o 11: 'G'
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
437 |
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
438 o 10: 'D'
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
439 |
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
440 o 9: 'C'
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
441 |
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
442 | o 8: 'I'
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
443 | |
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
444 | o 7: 'H'
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
445 | |
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
446 | o 6: 'G'
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
447 | |
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
448 | | o 5: 'F'
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
449 | | |
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
450 | | o 4: 'E'
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
451 | |/
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
452 | o 3: 'D'
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
453 | |
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
454 | o 2: 'C'
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
455 | |
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
456 o | 1: 'B'
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
457 |/
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
458 o 0: 'A'
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
459
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
460
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
461 $ cd ..
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
462
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
463 Base on have one descendant heads we ask for but common ancestor have two
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
464
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
465 $ hg clone -q -u . ah ah2
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
466 $ cd ah2
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
467 $ hg rebase -r '3::8' -d 1
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
468 abort: can't remove original changesets with unrebased descendants
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
469 (use --keep to keep original changesets)
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
470 [255]
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
471 $ hg rebase -r '3::8' -d 1 --keep
23517
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
472 rebasing 3:ffd453c31098 "D"
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
473 rebasing 6:3d8a618087a7 "G"
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
474 rebasing 7:72434a4e60b0 "H"
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
475 rebasing 8:479ddb54a924 "I" (tip)
15270
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
476 $ hg tglog
19925
9c78ed396075 rebase: preserve working directory parent (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 19059
diff changeset
477 o 12: 'I'
15270
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
478 |
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
479 o 11: 'H'
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
480 |
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
481 o 10: 'G'
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
482 |
17005
50f434510da6 rebase: do not add second parent to rebased changeset (drop detach option) (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16540
diff changeset
483 o 9: 'D'
50f434510da6 rebase: do not add second parent to rebased changeset (drop detach option) (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16540
diff changeset
484 |
50f434510da6 rebase: do not add second parent to rebased changeset (drop detach option) (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16540
diff changeset
485 | o 8: 'I'
50f434510da6 rebase: do not add second parent to rebased changeset (drop detach option) (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16540
diff changeset
486 | |
50f434510da6 rebase: do not add second parent to rebased changeset (drop detach option) (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16540
diff changeset
487 | o 7: 'H'
50f434510da6 rebase: do not add second parent to rebased changeset (drop detach option) (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16540
diff changeset
488 | |
50f434510da6 rebase: do not add second parent to rebased changeset (drop detach option) (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16540
diff changeset
489 | o 6: 'G'
50f434510da6 rebase: do not add second parent to rebased changeset (drop detach option) (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16540
diff changeset
490 | |
50f434510da6 rebase: do not add second parent to rebased changeset (drop detach option) (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16540
diff changeset
491 | | o 5: 'F'
15270
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
492 | | |
17005
50f434510da6 rebase: do not add second parent to rebased changeset (drop detach option) (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16540
diff changeset
493 | | o 4: 'E'
15270
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
494 | |/
17005
50f434510da6 rebase: do not add second parent to rebased changeset (drop detach option) (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16540
diff changeset
495 | o 3: 'D'
50f434510da6 rebase: do not add second parent to rebased changeset (drop detach option) (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16540
diff changeset
496 | |
15270
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
497 | o 2: 'C'
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
498 | |
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
499 o | 1: 'B'
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
500 |/
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
501 o 0: 'A'
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
502
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
503
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
504 $ cd ..
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
505
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
506 rebase subset
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
507
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
508 $ hg clone -q -u . ah ah3
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
509 $ cd ah3
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
510 $ hg rebase -r '3::7' -d 1
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
511 abort: can't remove original changesets with unrebased descendants
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
512 (use --keep to keep original changesets)
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
513 [255]
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
514 $ hg rebase -r '3::7' -d 1 --keep
23517
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
515 rebasing 3:ffd453c31098 "D"
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
516 rebasing 6:3d8a618087a7 "G"
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
517 rebasing 7:72434a4e60b0 "H"
15270
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
518 $ hg tglog
19925
9c78ed396075 rebase: preserve working directory parent (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 19059
diff changeset
519 o 11: 'H'
15270
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
520 |
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
521 o 10: 'G'
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
522 |
17005
50f434510da6 rebase: do not add second parent to rebased changeset (drop detach option) (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16540
diff changeset
523 o 9: 'D'
50f434510da6 rebase: do not add second parent to rebased changeset (drop detach option) (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16540
diff changeset
524 |
50f434510da6 rebase: do not add second parent to rebased changeset (drop detach option) (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16540
diff changeset
525 | o 8: 'I'
50f434510da6 rebase: do not add second parent to rebased changeset (drop detach option) (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16540
diff changeset
526 | |
50f434510da6 rebase: do not add second parent to rebased changeset (drop detach option) (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16540
diff changeset
527 | o 7: 'H'
50f434510da6 rebase: do not add second parent to rebased changeset (drop detach option) (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16540
diff changeset
528 | |
50f434510da6 rebase: do not add second parent to rebased changeset (drop detach option) (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16540
diff changeset
529 | o 6: 'G'
50f434510da6 rebase: do not add second parent to rebased changeset (drop detach option) (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16540
diff changeset
530 | |
50f434510da6 rebase: do not add second parent to rebased changeset (drop detach option) (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16540
diff changeset
531 | | o 5: 'F'
15270
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
532 | | |
17005
50f434510da6 rebase: do not add second parent to rebased changeset (drop detach option) (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16540
diff changeset
533 | | o 4: 'E'
15270
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
534 | |/
17005
50f434510da6 rebase: do not add second parent to rebased changeset (drop detach option) (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16540
diff changeset
535 | o 3: 'D'
50f434510da6 rebase: do not add second parent to rebased changeset (drop detach option) (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16540
diff changeset
536 | |
15270
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
537 | o 2: 'C'
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
538 | |
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
539 o | 1: 'B'
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
540 |/
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
541 o 0: 'A'
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
542
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
543
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
544 $ cd ..
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
545
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
546 rebase subset with multiple head
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
547
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
548 $ hg clone -q -u . ah ah4
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
549 $ cd ah4
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
550 $ hg rebase -r '3::(7+5)' -d 1
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
551 abort: can't remove original changesets with unrebased descendants
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
552 (use --keep to keep original changesets)
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
553 [255]
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
554 $ hg rebase -r '3::(7+5)' -d 1 --keep
23517
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
555 rebasing 3:ffd453c31098 "D"
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
556 rebasing 4:c01897464e7f "E"
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
557 rebasing 5:41bfcc75ed73 "F"
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
558 rebasing 6:3d8a618087a7 "G"
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
559 rebasing 7:72434a4e60b0 "H"
15270
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
560 $ hg tglog
19925
9c78ed396075 rebase: preserve working directory parent (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 19059
diff changeset
561 o 13: 'H'
15270
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
562 |
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
563 o 12: 'G'
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
564 |
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
565 | o 11: 'F'
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
566 | |
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
567 | o 10: 'E'
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
568 |/
17005
50f434510da6 rebase: do not add second parent to rebased changeset (drop detach option) (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16540
diff changeset
569 o 9: 'D'
50f434510da6 rebase: do not add second parent to rebased changeset (drop detach option) (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16540
diff changeset
570 |
50f434510da6 rebase: do not add second parent to rebased changeset (drop detach option) (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16540
diff changeset
571 | o 8: 'I'
50f434510da6 rebase: do not add second parent to rebased changeset (drop detach option) (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16540
diff changeset
572 | |
50f434510da6 rebase: do not add second parent to rebased changeset (drop detach option) (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16540
diff changeset
573 | o 7: 'H'
50f434510da6 rebase: do not add second parent to rebased changeset (drop detach option) (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16540
diff changeset
574 | |
50f434510da6 rebase: do not add second parent to rebased changeset (drop detach option) (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16540
diff changeset
575 | o 6: 'G'
50f434510da6 rebase: do not add second parent to rebased changeset (drop detach option) (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16540
diff changeset
576 | |
50f434510da6 rebase: do not add second parent to rebased changeset (drop detach option) (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16540
diff changeset
577 | | o 5: 'F'
15270
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
578 | | |
17005
50f434510da6 rebase: do not add second parent to rebased changeset (drop detach option) (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16540
diff changeset
579 | | o 4: 'E'
15270
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
580 | |/
17005
50f434510da6 rebase: do not add second parent to rebased changeset (drop detach option) (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16540
diff changeset
581 | o 3: 'D'
50f434510da6 rebase: do not add second parent to rebased changeset (drop detach option) (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16540
diff changeset
582 | |
15270
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
583 | o 2: 'C'
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
584 | |
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
585 o | 1: 'B'
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
586 |/
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
587 o 0: 'A'
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
588
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
589
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
590 $ cd ..
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
591
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
592 More advanced tests
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
593
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
594 rebase on ancestor with revset
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
595
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
596 $ hg clone -q -u . ah ah5
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
597 $ cd ah5
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
598 $ hg rebase -r '6::' -d 2
23517
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
599 rebasing 6:3d8a618087a7 "G"
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
600 rebasing 7:72434a4e60b0 "H"
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
601 rebasing 8:479ddb54a924 "I" (tip)
23835
aa4a1672583e bundles: do not overwrite existing backup bundles (BC)
Durham Goode <durham@fb.com>
parents: 23518
diff changeset
602 saved backup bundle to $TESTTMP/ah5/.hg/strip-backup/3d8a618087a7-b4f73f31-backup.hg (glob)
15270
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
603 $ hg tglog
19925
9c78ed396075 rebase: preserve working directory parent (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 19059
diff changeset
604 o 8: 'I'
15270
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
605 |
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
606 o 7: 'H'
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
607 |
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
608 o 6: 'G'
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
609 |
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
610 | o 5: 'F'
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
611 | |
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
612 | o 4: 'E'
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
613 | |
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
614 | o 3: 'D'
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
615 |/
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
616 o 2: 'C'
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
617 |
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
618 | o 1: 'B'
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
619 |/
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
620 o 0: 'A'
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
621
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
622 $ cd ..
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
623
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
624
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
625 rebase with multiple root.
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
626 We rebase E and G on B
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
627 We would expect heads are I, F if it was supported
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
628
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
629 $ hg clone -q -u . ah ah6
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
630 $ cd ah6
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
631 $ hg rebase -r '(4+6)::' -d 1
23517
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
632 rebasing 4:c01897464e7f "E"
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
633 rebasing 5:41bfcc75ed73 "F"
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
634 rebasing 6:3d8a618087a7 "G"
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
635 rebasing 7:72434a4e60b0 "H"
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
636 rebasing 8:479ddb54a924 "I" (tip)
23835
aa4a1672583e bundles: do not overwrite existing backup bundles (BC)
Durham Goode <durham@fb.com>
parents: 23518
diff changeset
637 saved backup bundle to $TESTTMP/ah6/.hg/strip-backup/3d8a618087a7-aae93a24-backup.hg (glob)
18424
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
638 $ hg tglog
19925
9c78ed396075 rebase: preserve working directory parent (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 19059
diff changeset
639 o 8: 'I'
18424
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
640 |
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
641 o 7: 'H'
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
642 |
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
643 o 6: 'G'
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
644 |
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
645 | o 5: 'F'
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
646 | |
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
647 | o 4: 'E'
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
648 |/
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
649 | o 3: 'D'
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
650 | |
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
651 | o 2: 'C'
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
652 | |
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
653 o | 1: 'B'
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
654 |/
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
655 o 0: 'A'
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
656
15270
6cb6064f1d50 rebase: add --rev option to rebase
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15267
diff changeset
657 $ cd ..
18424
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
658
18644
3e92772d5383 spelling: fix some minor issues found by spell checker
Mads Kiilerich <mads@kiilerich.com>
parents: 18424
diff changeset
659 More complex rebase with multiple roots
18424
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
660 each root have a different common ancestor with the destination and this is a detach
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
661
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
662 (setup)
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
663
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
664 $ hg clone -q -u . a a8
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
665 $ cd a8
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
666 $ echo I > I
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
667 $ hg add I
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
668 $ hg commit -m I
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
669 $ hg up 4
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
670 1 files updated, 0 files merged, 3 files removed, 0 files unresolved
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
671 $ echo I > J
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
672 $ hg add J
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
673 $ hg commit -m J
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
674 created new head
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
675 $ echo I > K
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
676 $ hg add K
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
677 $ hg commit -m K
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
678 $ hg tglog
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
679 @ 10: 'K'
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
680 |
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
681 o 9: 'J'
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
682 |
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
683 | o 8: 'I'
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
684 | |
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
685 | o 7: 'H'
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
686 | |
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
687 +---o 6: 'G'
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
688 | |/
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
689 | o 5: 'F'
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
690 | |
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
691 o | 4: 'E'
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
692 |/
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
693 | o 3: 'D'
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
694 | |
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
695 | o 2: 'C'
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
696 | |
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
697 | o 1: 'B'
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
698 |/
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
699 o 0: 'A'
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
700
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
701 (actual test)
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
702
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
703 $ hg rebase --dest 'desc(G)' --rev 'desc(K) + desc(I)'
23517
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
704 rebasing 8:e7ec4e813ba6 "I"
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
705 rebasing 10:23a4ace37988 "K" (tip)
23835
aa4a1672583e bundles: do not overwrite existing backup bundles (BC)
Durham Goode <durham@fb.com>
parents: 23518
diff changeset
706 saved backup bundle to $TESTTMP/a8/.hg/strip-backup/23a4ace37988-b06984b3-backup.hg (glob)
18424
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
707 $ hg log --rev 'children(desc(G))'
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
708 changeset: 9:adb617877056
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
709 parent: 6:eea13746799a
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
710 user: test
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
711 date: Thu Jan 01 00:00:00 1970 +0000
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
712 summary: I
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
713
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
714 changeset: 10:882431a34a0e
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
715 tag: tip
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
716 parent: 6:eea13746799a
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
717 user: test
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
718 date: Thu Jan 01 00:00:00 1970 +0000
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
719 summary: K
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
720
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
721 $ hg tglog
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
722 @ 10: 'K'
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
723 |
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
724 | o 9: 'I'
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
725 |/
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
726 | o 8: 'J'
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
727 | |
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
728 | | o 7: 'H'
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
729 | | |
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
730 o---+ 6: 'G'
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
731 |/ /
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
732 | o 5: 'F'
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
733 | |
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
734 o | 4: 'E'
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
735 |/
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
736 | o 3: 'D'
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
737 | |
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
738 | o 2: 'C'
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
739 | |
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
740 | o 1: 'B'
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
741 |/
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
742 o 0: 'A'
100fdc84670f rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17029
diff changeset
743
20335
e40520642e64 rebase: do not crash in panic when cwd disapear in the process (issue4121)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20249
diff changeset
744
22183
4dd9f606d0a6 tests: fixup issue markers to make check-commit happy
Matt Mackall <mpm@selenic.com>
parents: 21410
diff changeset
745 Test that rebase is not confused by $CWD disappearing during rebase (issue4121)
20335
e40520642e64 rebase: do not crash in panic when cwd disapear in the process (issue4121)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20249
diff changeset
746
e40520642e64 rebase: do not crash in panic when cwd disapear in the process (issue4121)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20249
diff changeset
747 $ cd ..
e40520642e64 rebase: do not crash in panic when cwd disapear in the process (issue4121)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20249
diff changeset
748 $ hg init cwd-vanish
e40520642e64 rebase: do not crash in panic when cwd disapear in the process (issue4121)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20249
diff changeset
749 $ cd cwd-vanish
e40520642e64 rebase: do not crash in panic when cwd disapear in the process (issue4121)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20249
diff changeset
750 $ touch initial-file
e40520642e64 rebase: do not crash in panic when cwd disapear in the process (issue4121)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20249
diff changeset
751 $ hg add initial-file
e40520642e64 rebase: do not crash in panic when cwd disapear in the process (issue4121)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20249
diff changeset
752 $ hg commit -m 'initial commit'
e40520642e64 rebase: do not crash in panic when cwd disapear in the process (issue4121)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20249
diff changeset
753 $ touch dest-file
e40520642e64 rebase: do not crash in panic when cwd disapear in the process (issue4121)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20249
diff changeset
754 $ hg add dest-file
e40520642e64 rebase: do not crash in panic when cwd disapear in the process (issue4121)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20249
diff changeset
755 $ hg commit -m 'dest commit'
e40520642e64 rebase: do not crash in panic when cwd disapear in the process (issue4121)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20249
diff changeset
756 $ hg up 0
e40520642e64 rebase: do not crash in panic when cwd disapear in the process (issue4121)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20249
diff changeset
757 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
e40520642e64 rebase: do not crash in panic when cwd disapear in the process (issue4121)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20249
diff changeset
758 $ touch other-file
e40520642e64 rebase: do not crash in panic when cwd disapear in the process (issue4121)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20249
diff changeset
759 $ hg add other-file
e40520642e64 rebase: do not crash in panic when cwd disapear in the process (issue4121)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20249
diff changeset
760 $ hg commit -m 'first source commit'
e40520642e64 rebase: do not crash in panic when cwd disapear in the process (issue4121)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20249
diff changeset
761 created new head
e40520642e64 rebase: do not crash in panic when cwd disapear in the process (issue4121)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20249
diff changeset
762 $ mkdir subdir
e40520642e64 rebase: do not crash in panic when cwd disapear in the process (issue4121)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20249
diff changeset
763 $ cd subdir
e40520642e64 rebase: do not crash in panic when cwd disapear in the process (issue4121)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20249
diff changeset
764 $ touch subfile
e40520642e64 rebase: do not crash in panic when cwd disapear in the process (issue4121)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20249
diff changeset
765 $ hg add subfile
e40520642e64 rebase: do not crash in panic when cwd disapear in the process (issue4121)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20249
diff changeset
766 $ hg commit -m 'second source with subdir'
30230
46a0203dfb89 tests: run "cwd was removed" test only if cwd can actually be removed
Yuya Nishihara <yuya@tcha.org>
parents: 30172
diff changeset
767 #if rmcwd
20335
e40520642e64 rebase: do not crash in panic when cwd disapear in the process (issue4121)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 20249
diff changeset
768 $ hg rebase -b . -d 1 --traceback
23517
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
769 rebasing 2:779a07b1b7a0 "first source commit"
30172
90a6c18a7c1d update: warn if cwd was deleted
Stanislau Hlebik <stash@fb.com>
parents: 30007
diff changeset
770 current directory was removed
90a6c18a7c1d update: warn if cwd was deleted
Stanislau Hlebik <stash@fb.com>
parents: 30007
diff changeset
771 (consider changing to repo root: $TESTTMP/cwd-vanish)
23517
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
772 rebasing 3:a7d6f3a00bf3 "second source with subdir" (tip)
23835
aa4a1672583e bundles: do not overwrite existing backup bundles (BC)
Durham Goode <durham@fb.com>
parents: 23518
diff changeset
773 saved backup bundle to $TESTTMP/cwd-vanish/.hg/strip-backup/779a07b1b7a0-853e0073-backup.hg (glob)
30230
46a0203dfb89 tests: run "cwd was removed" test only if cwd can actually be removed
Yuya Nishihara <yuya@tcha.org>
parents: 30172
diff changeset
774 #else
46a0203dfb89 tests: run "cwd was removed" test only if cwd can actually be removed
Yuya Nishihara <yuya@tcha.org>
parents: 30172
diff changeset
775 $ hg rebase -b . -d 1 --traceback
46a0203dfb89 tests: run "cwd was removed" test only if cwd can actually be removed
Yuya Nishihara <yuya@tcha.org>
parents: 30172
diff changeset
776 rebasing 2:779a07b1b7a0 "first source commit"
46a0203dfb89 tests: run "cwd was removed" test only if cwd can actually be removed
Yuya Nishihara <yuya@tcha.org>
parents: 30172
diff changeset
777 rebasing 3:a7d6f3a00bf3 "second source with subdir" (tip)
46a0203dfb89 tests: run "cwd was removed" test only if cwd can actually be removed
Yuya Nishihara <yuya@tcha.org>
parents: 30172
diff changeset
778 saved backup bundle to $TESTTMP/cwd-vanish/.hg/strip-backup/779a07b1b7a0-853e0073-backup.hg (glob)
46a0203dfb89 tests: run "cwd was removed" test only if cwd can actually be removed
Yuya Nishihara <yuya@tcha.org>
parents: 30172
diff changeset
779 #endif
26719
8bed1eae99df rebase: rename and test '_destrebase'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25411
diff changeset
780
30849
763031a7690d tests: use an absolute path to get around '..' being invalid on a dead CWD
Augie Fackler <augie@google.com>
parents: 30332
diff changeset
781 Get back to the root of cwd-vanish. Note that even though `cd ..`
763031a7690d tests: use an absolute path to get around '..' being invalid on a dead CWD
Augie Fackler <augie@google.com>
parents: 30332
diff changeset
782 works on most systems, it does not work on FreeBSD 10, so we use an
763031a7690d tests: use an absolute path to get around '..' being invalid on a dead CWD
Augie Fackler <augie@google.com>
parents: 30332
diff changeset
783 absolute path to get back to the repository.
31143
628600bf55e4 tests: un-nest the `order` repo in test-rebase-scenario-global
Augie Fackler <augie@google.com>
parents: 30849
diff changeset
784 $ cd $TESTTMP
30849
763031a7690d tests: use an absolute path to get around '..' being invalid on a dead CWD
Augie Fackler <augie@google.com>
parents: 30332
diff changeset
785
30007
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
786 Test that rebase is done in topo order (issue5370)
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
787
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
788 $ hg init order
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
789 $ cd order
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
790 $ touch a && hg add a && hg ci -m A
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
791 $ touch b && hg add b && hg ci -m B
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
792 $ touch c && hg add c && hg ci -m C
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
793 $ hg up 1
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
794 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
795 $ touch d && hg add d && hg ci -m D
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
796 created new head
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
797 $ hg up 2
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
798 1 files updated, 0 files merged, 1 files removed, 0 files unresolved
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
799 $ touch e && hg add e && hg ci -m E
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
800 $ hg up 3
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
801 1 files updated, 0 files merged, 2 files removed, 0 files unresolved
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
802 $ touch f && hg add f && hg ci -m F
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
803 $ hg up 0
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
804 0 files updated, 0 files merged, 3 files removed, 0 files unresolved
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
805 $ touch g && hg add g && hg ci -m G
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
806 created new head
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
807
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
808 $ hg tglog
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
809 @ 6: 'G'
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
810 |
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
811 | o 5: 'F'
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
812 | |
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
813 | | o 4: 'E'
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
814 | | |
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
815 | o | 3: 'D'
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
816 | | |
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
817 | | o 2: 'C'
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
818 | |/
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
819 | o 1: 'B'
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
820 |/
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
821 o 0: 'A'
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
822
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
823
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
824 $ hg rebase -s 1 -d 6
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
825 rebasing 1:76035bbd54bd "B"
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
826 rebasing 2:d84f5cfaaf14 "C"
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
827 rebasing 4:82ae8dc7a9b7 "E"
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
828 rebasing 3:ab709c9f7171 "D"
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
829 rebasing 5:412b391de760 "F"
31143
628600bf55e4 tests: un-nest the `order` repo in test-rebase-scenario-global
Augie Fackler <augie@google.com>
parents: 30849
diff changeset
830 saved backup bundle to $TESTTMP/order/.hg/strip-backup/76035bbd54bd-e341bc99-backup.hg (glob)
30007
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
831
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
832 $ hg tglog
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
833 o 6: 'F'
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
834 |
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
835 o 5: 'D'
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
836 |
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
837 | o 4: 'E'
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
838 | |
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
839 | o 3: 'C'
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
840 |/
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
841 o 2: 'B'
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
842 |
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
843 @ 1: 'G'
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
844 |
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
845 o 0: 'A'
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
846
aca0954d3739 rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents: 29966
diff changeset
847
26719
8bed1eae99df rebase: rename and test '_destrebase'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25411
diff changeset
848 Test experimental revset
28135
ecfa82447162 tests: have a more elaborated test for _destrebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28022
diff changeset
849 ========================
26719
8bed1eae99df rebase: rename and test '_destrebase'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25411
diff changeset
850
31143
628600bf55e4 tests: un-nest the `order` repo in test-rebase-scenario-global
Augie Fackler <augie@google.com>
parents: 30849
diff changeset
851 $ cd ../cwd-vanish
28135
ecfa82447162 tests: have a more elaborated test for _destrebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28022
diff changeset
852
30332
318a24b52eeb spelling: fixes of non-dictionary words
Mads Kiilerich <madski@unity3d.com>
parents: 30230
diff changeset
853 Make the repo a bit more interesting
28135
ecfa82447162 tests: have a more elaborated test for _destrebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28022
diff changeset
854
ecfa82447162 tests: have a more elaborated test for _destrebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28022
diff changeset
855 $ hg up 1
ecfa82447162 tests: have a more elaborated test for _destrebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28022
diff changeset
856 0 files updated, 0 files merged, 2 files removed, 0 files unresolved
ecfa82447162 tests: have a more elaborated test for _destrebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28022
diff changeset
857 $ echo aaa > aaa
ecfa82447162 tests: have a more elaborated test for _destrebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28022
diff changeset
858 $ hg add aaa
ecfa82447162 tests: have a more elaborated test for _destrebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28022
diff changeset
859 $ hg commit -m aaa
ecfa82447162 tests: have a more elaborated test for _destrebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28022
diff changeset
860 created new head
ecfa82447162 tests: have a more elaborated test for _destrebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28022
diff changeset
861 $ hg log -G
ecfa82447162 tests: have a more elaborated test for _destrebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28022
diff changeset
862 @ changeset: 4:5f7bc9025ed2
ecfa82447162 tests: have a more elaborated test for _destrebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28022
diff changeset
863 | tag: tip
ecfa82447162 tests: have a more elaborated test for _destrebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28022
diff changeset
864 | parent: 1:58d79cc1cf43
ecfa82447162 tests: have a more elaborated test for _destrebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28022
diff changeset
865 | user: test
ecfa82447162 tests: have a more elaborated test for _destrebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28022
diff changeset
866 | date: Thu Jan 01 00:00:00 1970 +0000
ecfa82447162 tests: have a more elaborated test for _destrebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28022
diff changeset
867 | summary: aaa
ecfa82447162 tests: have a more elaborated test for _destrebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28022
diff changeset
868 |
ecfa82447162 tests: have a more elaborated test for _destrebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28022
diff changeset
869 | o changeset: 3:1910d5ff34ea
ecfa82447162 tests: have a more elaborated test for _destrebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28022
diff changeset
870 | | user: test
ecfa82447162 tests: have a more elaborated test for _destrebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28022
diff changeset
871 | | date: Thu Jan 01 00:00:00 1970 +0000
ecfa82447162 tests: have a more elaborated test for _destrebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28022
diff changeset
872 | | summary: second source with subdir
ecfa82447162 tests: have a more elaborated test for _destrebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28022
diff changeset
873 | |
ecfa82447162 tests: have a more elaborated test for _destrebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28022
diff changeset
874 | o changeset: 2:82901330b6ef
ecfa82447162 tests: have a more elaborated test for _destrebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28022
diff changeset
875 |/ user: test
ecfa82447162 tests: have a more elaborated test for _destrebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28022
diff changeset
876 | date: Thu Jan 01 00:00:00 1970 +0000
ecfa82447162 tests: have a more elaborated test for _destrebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28022
diff changeset
877 | summary: first source commit
ecfa82447162 tests: have a more elaborated test for _destrebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28022
diff changeset
878 |
ecfa82447162 tests: have a more elaborated test for _destrebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28022
diff changeset
879 o changeset: 1:58d79cc1cf43
ecfa82447162 tests: have a more elaborated test for _destrebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28022
diff changeset
880 | user: test
ecfa82447162 tests: have a more elaborated test for _destrebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28022
diff changeset
881 | date: Thu Jan 01 00:00:00 1970 +0000
ecfa82447162 tests: have a more elaborated test for _destrebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28022
diff changeset
882 | summary: dest commit
ecfa82447162 tests: have a more elaborated test for _destrebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28022
diff changeset
883 |
ecfa82447162 tests: have a more elaborated test for _destrebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28022
diff changeset
884 o changeset: 0:e94b687f7da3
ecfa82447162 tests: have a more elaborated test for _destrebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28022
diff changeset
885 user: test
ecfa82447162 tests: have a more elaborated test for _destrebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28022
diff changeset
886 date: Thu Jan 01 00:00:00 1970 +0000
ecfa82447162 tests: have a more elaborated test for _destrebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28022
diff changeset
887 summary: initial commit
ecfa82447162 tests: have a more elaborated test for _destrebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28022
diff changeset
888
ecfa82447162 tests: have a more elaborated test for _destrebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28022
diff changeset
889
ecfa82447162 tests: have a more elaborated test for _destrebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28022
diff changeset
890 Testing from lower head
ecfa82447162 tests: have a more elaborated test for _destrebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28022
diff changeset
891
ecfa82447162 tests: have a more elaborated test for _destrebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28022
diff changeset
892 $ hg up 3
ecfa82447162 tests: have a more elaborated test for _destrebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28022
diff changeset
893 2 files updated, 0 files merged, 1 files removed, 0 files unresolved
26719
8bed1eae99df rebase: rename and test '_destrebase'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25411
diff changeset
894 $ hg log -r '_destrebase()'
28135
ecfa82447162 tests: have a more elaborated test for _destrebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28022
diff changeset
895 changeset: 4:5f7bc9025ed2
26719
8bed1eae99df rebase: rename and test '_destrebase'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25411
diff changeset
896 tag: tip
28135
ecfa82447162 tests: have a more elaborated test for _destrebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28022
diff changeset
897 parent: 1:58d79cc1cf43
26719
8bed1eae99df rebase: rename and test '_destrebase'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25411
diff changeset
898 user: test
8bed1eae99df rebase: rename and test '_destrebase'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25411
diff changeset
899 date: Thu Jan 01 00:00:00 1970 +0000
28135
ecfa82447162 tests: have a more elaborated test for _destrebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28022
diff changeset
900 summary: aaa
26719
8bed1eae99df rebase: rename and test '_destrebase'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 25411
diff changeset
901
28135
ecfa82447162 tests: have a more elaborated test for _destrebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28022
diff changeset
902
ecfa82447162 tests: have a more elaborated test for _destrebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28022
diff changeset
903 Testing from upper head
ecfa82447162 tests: have a more elaborated test for _destrebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28022
diff changeset
904
28189
fac3a24be50e rebase: choose default destination the same way as 'hg merge' (BC)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28135
diff changeset
905 $ hg log -r '_destrebase(4)'
fac3a24be50e rebase: choose default destination the same way as 'hg merge' (BC)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28135
diff changeset
906 changeset: 3:1910d5ff34ea
fac3a24be50e rebase: choose default destination the same way as 'hg merge' (BC)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28135
diff changeset
907 user: test
fac3a24be50e rebase: choose default destination the same way as 'hg merge' (BC)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28135
diff changeset
908 date: Thu Jan 01 00:00:00 1970 +0000
fac3a24be50e rebase: choose default destination the same way as 'hg merge' (BC)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28135
diff changeset
909 summary: second source with subdir
fac3a24be50e rebase: choose default destination the same way as 'hg merge' (BC)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28135
diff changeset
910
28135
ecfa82447162 tests: have a more elaborated test for _destrebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28022
diff changeset
911 $ hg up 4
ecfa82447162 tests: have a more elaborated test for _destrebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28022
diff changeset
912 1 files updated, 0 files merged, 2 files removed, 0 files unresolved
ecfa82447162 tests: have a more elaborated test for _destrebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28022
diff changeset
913 $ hg log -r '_destrebase()'
28189
fac3a24be50e rebase: choose default destination the same way as 'hg merge' (BC)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28135
diff changeset
914 changeset: 3:1910d5ff34ea
28135
ecfa82447162 tests: have a more elaborated test for _destrebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28022
diff changeset
915 user: test
ecfa82447162 tests: have a more elaborated test for _destrebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28022
diff changeset
916 date: Thu Jan 01 00:00:00 1970 +0000
28189
fac3a24be50e rebase: choose default destination the same way as 'hg merge' (BC)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28135
diff changeset
917 summary: second source with subdir
28135
ecfa82447162 tests: have a more elaborated test for _destrebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28022
diff changeset
918
33055
be3584712b20 test-rebase: add a test showing rebasestate left behind
Jun Wu <quark@fb.com>
parents: 31514
diff changeset
919 Testing rebase being called inside another transaction
be3584712b20 test-rebase: add a test showing rebasestate left behind
Jun Wu <quark@fb.com>
parents: 31514
diff changeset
920
be3584712b20 test-rebase: add a test showing rebasestate left behind
Jun Wu <quark@fb.com>
parents: 31514
diff changeset
921 $ cd $TESTTMP
be3584712b20 test-rebase: add a test showing rebasestate left behind
Jun Wu <quark@fb.com>
parents: 31514
diff changeset
922 $ hg init tr-state
be3584712b20 test-rebase: add a test showing rebasestate left behind
Jun Wu <quark@fb.com>
parents: 31514
diff changeset
923 $ cd tr-state
be3584712b20 test-rebase: add a test showing rebasestate left behind
Jun Wu <quark@fb.com>
parents: 31514
diff changeset
924 $ cat > $TESTTMP/wraprebase.py <<EOF
be3584712b20 test-rebase: add a test showing rebasestate left behind
Jun Wu <quark@fb.com>
parents: 31514
diff changeset
925 > from __future__ import absolute_import
be3584712b20 test-rebase: add a test showing rebasestate left behind
Jun Wu <quark@fb.com>
parents: 31514
diff changeset
926 > from mercurial import extensions
be3584712b20 test-rebase: add a test showing rebasestate left behind
Jun Wu <quark@fb.com>
parents: 31514
diff changeset
927 > def _rebase(orig, ui, repo, *args, **kwargs):
be3584712b20 test-rebase: add a test showing rebasestate left behind
Jun Wu <quark@fb.com>
parents: 31514
diff changeset
928 > with repo.wlock():
be3584712b20 test-rebase: add a test showing rebasestate left behind
Jun Wu <quark@fb.com>
parents: 31514
diff changeset
929 > with repo.lock():
be3584712b20 test-rebase: add a test showing rebasestate left behind
Jun Wu <quark@fb.com>
parents: 31514
diff changeset
930 > with repo.transaction('wrappedrebase'):
be3584712b20 test-rebase: add a test showing rebasestate left behind
Jun Wu <quark@fb.com>
parents: 31514
diff changeset
931 > return orig(ui, repo, *args, **kwargs)
be3584712b20 test-rebase: add a test showing rebasestate left behind
Jun Wu <quark@fb.com>
parents: 31514
diff changeset
932 > def wraprebase(loaded):
be3584712b20 test-rebase: add a test showing rebasestate left behind
Jun Wu <quark@fb.com>
parents: 31514
diff changeset
933 > assert loaded
be3584712b20 test-rebase: add a test showing rebasestate left behind
Jun Wu <quark@fb.com>
parents: 31514
diff changeset
934 > rebasemod = extensions.find('rebase')
be3584712b20 test-rebase: add a test showing rebasestate left behind
Jun Wu <quark@fb.com>
parents: 31514
diff changeset
935 > extensions.wrapcommand(rebasemod.cmdtable, 'rebase', _rebase)
be3584712b20 test-rebase: add a test showing rebasestate left behind
Jun Wu <quark@fb.com>
parents: 31514
diff changeset
936 > def extsetup(ui):
be3584712b20 test-rebase: add a test showing rebasestate left behind
Jun Wu <quark@fb.com>
parents: 31514
diff changeset
937 > extensions.afterloaded('rebase', wraprebase)
be3584712b20 test-rebase: add a test showing rebasestate left behind
Jun Wu <quark@fb.com>
parents: 31514
diff changeset
938 > EOF
be3584712b20 test-rebase: add a test showing rebasestate left behind
Jun Wu <quark@fb.com>
parents: 31514
diff changeset
939
be3584712b20 test-rebase: add a test showing rebasestate left behind
Jun Wu <quark@fb.com>
parents: 31514
diff changeset
940 $ cat >> .hg/hgrc <<EOF
be3584712b20 test-rebase: add a test showing rebasestate left behind
Jun Wu <quark@fb.com>
parents: 31514
diff changeset
941 > [extensions]
be3584712b20 test-rebase: add a test showing rebasestate left behind
Jun Wu <quark@fb.com>
parents: 31514
diff changeset
942 > wraprebase=$TESTTMP/wraprebase.py
be3584712b20 test-rebase: add a test showing rebasestate left behind
Jun Wu <quark@fb.com>
parents: 31514
diff changeset
943 > [experimental]
be3584712b20 test-rebase: add a test showing rebasestate left behind
Jun Wu <quark@fb.com>
parents: 31514
diff changeset
944 > evolution=all
be3584712b20 test-rebase: add a test showing rebasestate left behind
Jun Wu <quark@fb.com>
parents: 31514
diff changeset
945 > EOF
be3584712b20 test-rebase: add a test showing rebasestate left behind
Jun Wu <quark@fb.com>
parents: 31514
diff changeset
946
be3584712b20 test-rebase: add a test showing rebasestate left behind
Jun Wu <quark@fb.com>
parents: 31514
diff changeset
947 $ hg debugdrawdag <<'EOS'
be3584712b20 test-rebase: add a test showing rebasestate left behind
Jun Wu <quark@fb.com>
parents: 31514
diff changeset
948 > B C
be3584712b20 test-rebase: add a test showing rebasestate left behind
Jun Wu <quark@fb.com>
parents: 31514
diff changeset
949 > |/
be3584712b20 test-rebase: add a test showing rebasestate left behind
Jun Wu <quark@fb.com>
parents: 31514
diff changeset
950 > A
be3584712b20 test-rebase: add a test showing rebasestate left behind
Jun Wu <quark@fb.com>
parents: 31514
diff changeset
951 > EOS
be3584712b20 test-rebase: add a test showing rebasestate left behind
Jun Wu <quark@fb.com>
parents: 31514
diff changeset
952
be3584712b20 test-rebase: add a test showing rebasestate left behind
Jun Wu <quark@fb.com>
parents: 31514
diff changeset
953 $ hg rebase -s C -d B
be3584712b20 test-rebase: add a test showing rebasestate left behind
Jun Wu <quark@fb.com>
parents: 31514
diff changeset
954 rebasing 2:dc0947a82db8 "C" (C tip)
be3584712b20 test-rebase: add a test showing rebasestate left behind
Jun Wu <quark@fb.com>
parents: 31514
diff changeset
955
be3584712b20 test-rebase: add a test showing rebasestate left behind
Jun Wu <quark@fb.com>
parents: 31514
diff changeset
956 $ [ -f .hg/rebasestate ] && echo 'WRONG: rebasestate should not exist'
33056
2312e70cf78b rebase: clean up rebasestate from active transaction
Jun Wu <quark@fb.com>
parents: 33055
diff changeset
957 [1]