tests/test-rebase-named-branches.t
author Jun Wu <quark@fb.com>
Mon, 21 Aug 2017 20:22:07 -0700
changeset 34006 32528419db64
parent 33332 3b7cb3d17137
child 34661 eb586ed5d8ce
permissions -rw-r--r--
rebase: sort destmap topologically Previously rebase source and destination could not overlap. But with the multi-destination support, source and destination could reasonably partially overlap. That requires another topological sort on `{sourcerev: destrev}` graph (destmap). This patch implements that. If a revision's destination is itself, the error message gets changed from "source is ancestor of destination" to "source and destination form a cycle". Not marking as BC since automation should depend on exit code, not error message. Differential Revision: https://phab.mercurial-scm.org/D470
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
13733
4e2690a764c1 rebase: allow for rebasing descendants onto ancestors on different named branches
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
     1
  $ cat >> $HGRCPATH <<EOF
4e2690a764c1 rebase: allow for rebasing descendants onto ancestors on different named branches
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
     2
  > [extensions]
4e2690a764c1 rebase: allow for rebasing descendants onto ancestors on different named branches
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
     3
  > rebase=
4e2690a764c1 rebase: allow for rebasing descendants onto ancestors on different named branches
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
     4
  > 
15742
65df60a3f96b phases: prevent rebase to rebase immutable changeset.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15615
diff changeset
     5
  > [phases]
65df60a3f96b phases: prevent rebase to rebase immutable changeset.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15615
diff changeset
     6
  > publish=False
65df60a3f96b phases: prevent rebase to rebase immutable changeset.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15615
diff changeset
     7
  > 
13733
4e2690a764c1 rebase: allow for rebasing descendants onto ancestors on different named branches
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
     8
  > [alias]
4e2690a764c1 rebase: allow for rebasing descendants onto ancestors on different named branches
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
     9
  > tglog = log -G --template "{rev}: '{desc}' {branches}\n"
4e2690a764c1 rebase: allow for rebasing descendants onto ancestors on different named branches
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
    10
  > EOF
4e2690a764c1 rebase: allow for rebasing descendants onto ancestors on different named branches
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
    11
4e2690a764c1 rebase: allow for rebasing descendants onto ancestors on different named branches
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
    12
  $ hg init a
4e2690a764c1 rebase: allow for rebasing descendants onto ancestors on different named branches
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
    13
  $ cd a
16350
4f795f5fbb0b tests: make tests work if directory contains special characters
Thomas Arendsen Hein <thomas@intevation.de>
parents: 15801
diff changeset
    14
  $ 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: 13733
diff changeset
    15
  adding changesets
7fd8e597f99c tests: introduce a rebase bundle to use with rebase tests
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 13733
diff changeset
    16
  adding manifests
7fd8e597f99c tests: introduce a rebase bundle to use with rebase tests
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 13733
diff changeset
    17
  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
    18
  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: 13733
diff changeset
    19
  (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: 13733
diff changeset
    20
  $ hg up tip
7fd8e597f99c tests: introduce a rebase bundle to use with rebase tests
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 13733
diff changeset
    21
  3 files updated, 0 files merged, 0 files removed, 0 files unresolved
13733
4e2690a764c1 rebase: allow for rebasing descendants onto ancestors on different named branches
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
    22
  $ cd ..
4e2690a764c1 rebase: allow for rebasing descendants onto ancestors on different named branches
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
    23
4e2690a764c1 rebase: allow for rebasing descendants onto ancestors on different named branches
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
    24
  $ hg clone -q -u . a a1
4e2690a764c1 rebase: allow for rebasing descendants onto ancestors on different named branches
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
    25
4e2690a764c1 rebase: allow for rebasing descendants onto ancestors on different named branches
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
    26
  $ cd a1
4e2690a764c1 rebase: allow for rebasing descendants onto ancestors on different named branches
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
    27
15800
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    28
  $ hg update 3
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    29
  3 files updated, 0 files merged, 2 files removed, 0 files unresolved
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    30
  $ hg branch dev-one
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    31
  marked working directory as branch dev-one
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    32
  (branches are permanent and global, did you want a bookmark?)
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    33
  $ hg ci -m 'dev-one named branch'
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    34
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    35
  $ hg update 7
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    36
  2 files updated, 0 files merged, 3 files removed, 0 files unresolved
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    37
  $ hg branch dev-two
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    38
  marked working directory as branch dev-two
13733
4e2690a764c1 rebase: allow for rebasing descendants onto ancestors on different named branches
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
    39
4e2690a764c1 rebase: allow for rebasing descendants onto ancestors on different named branches
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
    40
  $ echo x > x
4e2690a764c1 rebase: allow for rebasing descendants onto ancestors on different named branches
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
    41
4e2690a764c1 rebase: allow for rebasing descendants onto ancestors on different named branches
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
    42
  $ hg add x
4e2690a764c1 rebase: allow for rebasing descendants onto ancestors on different named branches
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
    43
15800
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    44
  $ hg ci -m 'dev-two named branch'
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    45
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    46
  $ hg tglog
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    47
  @  9: 'dev-two named branch' dev-two
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    48
  |
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    49
  | o  8: 'dev-one named branch' dev-one
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    50
  | |
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    51
  o |  7: 'H'
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    52
  | |
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    53
  +---o  6: 'G'
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    54
  | | |
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    55
  o | |  5: 'F'
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    56
  | | |
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    57
  +---o  4: 'E'
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    58
  | |
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    59
  | o  3: 'D'
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    60
  | |
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    61
  | o  2: 'C'
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    62
  | |
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    63
  | o  1: 'B'
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    64
  |/
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    65
  o  0: 'A'
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    66
  
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    67
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    68
Branch name containing a dash (issue3181)
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    69
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    70
  $ hg rebase -b dev-two -d dev-one --keepbranches
23517
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
    71
  rebasing 5:24b6387c8c8c "F"
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
    72
  rebasing 6:eea13746799a "G"
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
    73
  rebasing 7:02de42196ebe "H"
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
    74
  rebasing 9:cb039b7cae8e "dev-two named branch" (tip)
33332
3b7cb3d17137 rebase: use scmutil.cleanupnodes (issue5606) (BC)
Jun Wu <quark@fb.com>
parents: 31380
diff changeset
    75
  saved backup bundle to $TESTTMP/a1/.hg/strip-backup/24b6387c8c8c-24cb8001-rebase.hg (glob)
15800
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    76
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    77
  $ hg tglog
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    78
  @  9: 'dev-two named branch' dev-two
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    79
  |
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    80
  o  8: 'H'
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    81
  |
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    82
  | o  7: 'G'
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    83
  |/|
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    84
  o |  6: 'F'
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    85
  | |
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    86
  o |  5: 'dev-one named branch' dev-one
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    87
  | |
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    88
  | o  4: 'E'
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    89
  | |
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    90
  o |  3: 'D'
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    91
  | |
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    92
  o |  2: 'C'
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    93
  | |
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    94
  o |  1: 'B'
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    95
  |/
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    96
  o  0: 'A'
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    97
  
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
    98
  $ hg rebase -s dev-one -d 0 --keepbranches
23517
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
    99
  rebasing 5:643fc9128048 "dev-one named branch"
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
   100
  rebasing 6:24de4aff8e28 "F"
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
   101
  rebasing 7:4b988a958030 "G"
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
   102
  rebasing 8:31d0e4ba75e6 "H"
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
   103
  rebasing 9:9e70cd31750f "dev-two named branch" (tip)
33332
3b7cb3d17137 rebase: use scmutil.cleanupnodes (issue5606) (BC)
Jun Wu <quark@fb.com>
parents: 31380
diff changeset
   104
  saved backup bundle to $TESTTMP/a1/.hg/strip-backup/643fc9128048-c4ee9ef5-rebase.hg (glob)
13733
4e2690a764c1 rebase: allow for rebasing descendants onto ancestors on different named branches
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
   105
4e2690a764c1 rebase: allow for rebasing descendants onto ancestors on different named branches
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
   106
  $ hg tglog
26360
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   107
  @  9: 'dev-two named branch' dev-two
15800
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
   108
  |
26360
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   109
  o  8: 'H'
15800
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
   110
  |
26360
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   111
  | o  7: 'G'
15800
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
   112
  |/|
26360
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   113
  o |  6: 'F'
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   114
  | |
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   115
  o |  5: 'dev-one named branch' dev-one
15800
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
   116
  | |
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
   117
  | o  4: 'E'
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
   118
  |/
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
   119
  | o  3: 'D'
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
   120
  | |
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
   121
  | o  2: 'C'
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
   122
  | |
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
   123
  | o  1: 'B'
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
   124
  |/
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
   125
  o  0: 'A'
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
   126
  
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
   127
  $ hg update 3
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
   128
  3 files updated, 0 files merged, 3 files removed, 0 files unresolved
26360
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   129
  $ hg branch -f dev-one
15800
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
   130
  marked working directory as branch dev-one
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
   131
  $ hg ci -m 'dev-one named branch'
26360
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   132
  created new head
15800
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
   133
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
   134
  $ hg tglog
26360
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   135
  @  10: 'dev-one named branch' dev-one
15800
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
   136
  |
26360
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   137
  | o  9: 'dev-two named branch' dev-two
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   138
  | |
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   139
  | o  8: 'H'
15800
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
   140
  | |
26360
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   141
  | | o  7: 'G'
15800
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
   142
  | |/|
26360
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   143
  | o |  6: 'F'
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   144
  | | |
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   145
  | o |  5: 'dev-one named branch' dev-one
15800
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
   146
  | | |
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
   147
  | | o  4: 'E'
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
   148
  | |/
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
   149
  o |  3: 'D'
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
   150
  | |
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
   151
  o |  2: 'C'
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
   152
  | |
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
   153
  o |  1: 'B'
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
   154
  |/
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
   155
  o  0: 'A'
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
   156
  
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
   157
  $ hg rebase -b 'max(branch("dev-two"))' -d dev-one --keepbranches
26360
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   158
  rebasing 5:bc8139ee757c "dev-one named branch"
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   159
  note: rebase of 5:bc8139ee757c created no changes to commit
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   160
  rebasing 6:42aa3cf0fa7a "F"
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   161
  rebasing 7:1a1e6f72ec38 "G"
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   162
  rebasing 8:904590360559 "H"
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   163
  rebasing 9:59c2e59309fe "dev-two named branch"
33332
3b7cb3d17137 rebase: use scmutil.cleanupnodes (issue5606) (BC)
Jun Wu <quark@fb.com>
parents: 31380
diff changeset
   164
  saved backup bundle to $TESTTMP/a1/.hg/strip-backup/bc8139ee757c-f11c1080-rebase.hg (glob)
15800
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
   165
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
   166
  $ hg tglog
19925
9c78ed396075 rebase: preserve working directory parent (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16350
diff changeset
   167
  o  9: 'dev-two named branch' dev-two
15800
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
   168
  |
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
   169
  o  8: 'H'
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
   170
  |
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
   171
  | o  7: 'G'
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
   172
  |/|
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
   173
  o |  6: 'F'
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
   174
  | |
19925
9c78ed396075 rebase: preserve working directory parent (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16350
diff changeset
   175
  @ |  5: 'dev-one named branch' dev-one
15800
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
   176
  | |
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
   177
  | o  4: 'E'
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
   178
  | |
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
   179
  o |  3: 'D'
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
   180
  | |
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
   181
  o |  2: 'C'
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
   182
  | |
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
   183
  o |  1: 'B'
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
   184
  |/
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
   185
  o  0: 'A'
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
   186
  
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
   187
  $ hg rebase -s 'max(branch("dev-one"))' -d 0 --keepbranches
23517
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
   188
  rebasing 5:643fc9128048 "dev-one named branch"
26360
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   189
  rebasing 6:679f28760620 "F"
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   190
  rebasing 7:549f007a9f5f "G"
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   191
  rebasing 8:12b2bc666e20 "H"
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   192
  rebasing 9:71325f8bc082 "dev-two named branch" (tip)
33332
3b7cb3d17137 rebase: use scmutil.cleanupnodes (issue5606) (BC)
Jun Wu <quark@fb.com>
parents: 31380
diff changeset
   193
  saved backup bundle to $TESTTMP/a1/.hg/strip-backup/643fc9128048-6cdd1a52-rebase.hg (glob)
15800
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
   194
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
   195
  $ hg tglog
26360
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   196
  o  9: 'dev-two named branch' dev-two
13733
4e2690a764c1 rebase: allow for rebasing descendants onto ancestors on different named branches
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
   197
  |
26360
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   198
  o  8: 'H'
13733
4e2690a764c1 rebase: allow for rebasing descendants onto ancestors on different named branches
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
   199
  |
26360
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   200
  | o  7: 'G'
13733
4e2690a764c1 rebase: allow for rebasing descendants onto ancestors on different named branches
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
   201
  |/|
26360
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   202
  o |  6: 'F'
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   203
  | |
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   204
  @ |  5: 'dev-one named branch' dev-one
14119
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
   205
  | |
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
   206
  | o  4: 'E'
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
   207
  |/
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
   208
  | o  3: 'D'
13733
4e2690a764c1 rebase: allow for rebasing descendants onto ancestors on different named branches
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
   209
  | |
4e2690a764c1 rebase: allow for rebasing descendants onto ancestors on different named branches
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
   210
  | 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
   211
  | |
13733
4e2690a764c1 rebase: allow for rebasing descendants onto ancestors on different named branches
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
   212
  | o  1: 'B'
4e2690a764c1 rebase: allow for rebasing descendants onto ancestors on different named branches
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
   213
  |/
26360
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   214
  o  0: 'A'
13733
4e2690a764c1 rebase: allow for rebasing descendants onto ancestors on different named branches
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
   215
  
26360
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   216
  $ hg up -r 0 > /dev/null
14120
d7f80dbbaf49 tests: simplify test-rebase-named-branches
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14119
diff changeset
   217
15800
e4fc0f0b4f7e rebase: reinstate old-style rev spec support for the source and base (issue3181)
Steven Brown <StevenGBrown@gmail.com>
parents: 15615
diff changeset
   218
Rebasing descendant onto ancestor across different named branches
14120
d7f80dbbaf49 tests: simplify test-rebase-named-branches
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14119
diff changeset
   219
26360
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   220
  $ hg rebase -s 1 -d 9 --keepbranches
23517
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
   221
  rebasing 1:42ccdea3bb16 "B"
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
   222
  rebasing 2:5fddd98957c8 "C"
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
   223
  rebasing 3:32af7686d403 "D"
33332
3b7cb3d17137 rebase: use scmutil.cleanupnodes (issue5606) (BC)
Jun Wu <quark@fb.com>
parents: 31380
diff changeset
   224
  saved backup bundle to $TESTTMP/a1/.hg/strip-backup/42ccdea3bb16-3cb021d3-rebase.hg (glob)
13733
4e2690a764c1 rebase: allow for rebasing descendants onto ancestors on different named branches
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
   225
4e2690a764c1 rebase: allow for rebasing descendants onto ancestors on different named branches
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
   226
  $ hg tglog
26360
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   227
  o  9: 'D'
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   228
  |
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   229
  o  8: 'C'
13733
4e2690a764c1 rebase: allow for rebasing descendants onto ancestors on different named branches
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
   230
  |
26360
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   231
  o  7: 'B'
14124
81ecc951f57b tests: move rebase-keep-branch into rebase-named-branches
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14123
diff changeset
   232
  |
26360
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   233
  o  6: 'dev-two named branch' dev-two
13733
4e2690a764c1 rebase: allow for rebasing descendants onto ancestors on different named branches
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
   234
  |
26360
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   235
  o  5: 'H'
14124
81ecc951f57b tests: move rebase-keep-branch into rebase-named-branches
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14123
diff changeset
   236
  |
26360
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   237
  | o  4: 'G'
13733
4e2690a764c1 rebase: allow for rebasing descendants onto ancestors on different named branches
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
   238
  |/|
26360
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   239
  o |  3: 'F'
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   240
  | |
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   241
  o |  2: 'dev-one named branch' dev-one
14119
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
   242
  | |
14124
81ecc951f57b tests: move rebase-keep-branch into rebase-named-branches
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14123
diff changeset
   243
  | o  1: 'E'
14119
624e5ce615ec tests: upgrade bundles/rebase.hg to support test-rebase-collapse
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14118
diff changeset
   244
  |/
19925
9c78ed396075 rebase: preserve working directory parent (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16350
diff changeset
   245
  @  0: 'A'
14124
81ecc951f57b tests: move rebase-keep-branch into rebase-named-branches
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14123
diff changeset
   246
  
26360
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   247
  $ hg rebase -s 5 -d 6
34006
32528419db64 rebase: sort destmap topologically
Jun Wu <quark@fb.com>
parents: 33332
diff changeset
   248
  abort: source and destination form a cycle
14124
81ecc951f57b tests: move rebase-keep-branch into rebase-named-branches
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14123
diff changeset
   249
  [255]
81ecc951f57b tests: move rebase-keep-branch into rebase-named-branches
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14123
diff changeset
   250
26360
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   251
  $ hg rebase -s 6 -d 5
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   252
  rebasing 6:3944801ae4ea "dev-two named branch"
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   253
  rebasing 7:3bdb949809d9 "B"
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   254
  rebasing 8:a0d543090fa4 "C"
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   255
  rebasing 9:e9f862ce8bad "D" (tip)
33332
3b7cb3d17137 rebase: use scmutil.cleanupnodes (issue5606) (BC)
Jun Wu <quark@fb.com>
parents: 31380
diff changeset
   256
  saved backup bundle to $TESTTMP/a1/.hg/strip-backup/3944801ae4ea-fb46ed74-rebase.hg (glob)
14124
81ecc951f57b tests: move rebase-keep-branch into rebase-named-branches
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14123
diff changeset
   257
81ecc951f57b tests: move rebase-keep-branch into rebase-named-branches
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14123
diff changeset
   258
  $ hg tglog
26360
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   259
  o  9: 'D'
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   260
  |
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   261
  o  8: 'C'
14124
81ecc951f57b tests: move rebase-keep-branch into rebase-named-branches
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14123
diff changeset
   262
  |
26360
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   263
  o  7: 'B'
14124
81ecc951f57b tests: move rebase-keep-branch into rebase-named-branches
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14123
diff changeset
   264
  |
26360
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   265
  o  6: 'dev-two named branch'
14124
81ecc951f57b tests: move rebase-keep-branch into rebase-named-branches
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14123
diff changeset
   266
  |
26360
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   267
  o  5: 'H'
14124
81ecc951f57b tests: move rebase-keep-branch into rebase-named-branches
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14123
diff changeset
   268
  |
26360
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   269
  | o  4: 'G'
14124
81ecc951f57b tests: move rebase-keep-branch into rebase-named-branches
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14123
diff changeset
   270
  |/|
26360
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   271
  o |  3: 'F'
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   272
  | |
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   273
  o |  2: 'dev-one named branch' dev-one
13733
4e2690a764c1 rebase: allow for rebasing descendants onto ancestors on different named branches
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
   274
  | |
14124
81ecc951f57b tests: move rebase-keep-branch into rebase-named-branches
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 14123
diff changeset
   275
  | o  1: 'E'
13733
4e2690a764c1 rebase: allow for rebasing descendants onto ancestors on different named branches
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
   276
  |/
19925
9c78ed396075 rebase: preserve working directory parent (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 16350
diff changeset
   277
  @  0: 'A'
13733
4e2690a764c1 rebase: allow for rebasing descendants onto ancestors on different named branches
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
   278
  
21027
25ee5dbebc6b rebase: tell when reopening a closed branch head
Mads Kiilerich <madski@unity3d.com>
parents: 20251
diff changeset
   279
25ee5dbebc6b rebase: tell when reopening a closed branch head
Mads Kiilerich <madski@unity3d.com>
parents: 20251
diff changeset
   280
Reopen branch by rebase
25ee5dbebc6b rebase: tell when reopening a closed branch head
Mads Kiilerich <madski@unity3d.com>
parents: 20251
diff changeset
   281
25ee5dbebc6b rebase: tell when reopening a closed branch head
Mads Kiilerich <madski@unity3d.com>
parents: 20251
diff changeset
   282
  $ hg up -qr3
25ee5dbebc6b rebase: tell when reopening a closed branch head
Mads Kiilerich <madski@unity3d.com>
parents: 20251
diff changeset
   283
  $ hg branch -q b
25ee5dbebc6b rebase: tell when reopening a closed branch head
Mads Kiilerich <madski@unity3d.com>
parents: 20251
diff changeset
   284
  $ hg ci -m 'create b'
25ee5dbebc6b rebase: tell when reopening a closed branch head
Mads Kiilerich <madski@unity3d.com>
parents: 20251
diff changeset
   285
  $ hg ci -m 'close b' --close
25ee5dbebc6b rebase: tell when reopening a closed branch head
Mads Kiilerich <madski@unity3d.com>
parents: 20251
diff changeset
   286
  $ hg rebase -b 8 -d b
26360
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   287
  reopening closed branch head 2b586e70108d
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   288
  rebasing 5:8e279d293175 "H"
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   289
  rebasing 6:c57724c84928 "dev-two named branch"
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   290
  rebasing 7:160b0930ccc6 "B"
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   291
  rebasing 8:810110211f50 "C"
b2415e94b2f5 rebase: avoid losing branch commits with --keepbranch (issue4835)
timeless@mozdev.org
parents: 25295
diff changeset
   292
  rebasing 9:e522577ccdbd "D"
33332
3b7cb3d17137 rebase: use scmutil.cleanupnodes (issue5606) (BC)
Jun Wu <quark@fb.com>
parents: 31380
diff changeset
   293
  saved backup bundle to $TESTTMP/a1/.hg/strip-backup/8e279d293175-b023e27c-rebase.hg (glob)
21027
25ee5dbebc6b rebase: tell when reopening a closed branch head
Mads Kiilerich <madski@unity3d.com>
parents: 20251
diff changeset
   294
13733
4e2690a764c1 rebase: allow for rebasing descendants onto ancestors on different named branches
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
   295
  $ cd ..
20251
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   296
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   297
Rebase to other head on branch
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   298
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   299
Set up a case:
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   300
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   301
  $ hg init case1
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   302
  $ cd case1
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   303
  $ touch f
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   304
  $ hg ci -qAm0
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   305
  $ hg branch -q b
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   306
  $ echo >> f
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   307
  $ hg ci -qAm 'b1'
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   308
  $ hg up -qr -2
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   309
  $ hg branch -qf b
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   310
  $ hg ci -qm 'b2'
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   311
  $ hg up -qr -3
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   312
  $ hg branch -q c
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   313
  $ hg ci -m 'c1'
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   314
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   315
  $ hg tglog
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   316
  @  3: 'c1' c
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   317
  |
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   318
  | o  2: 'b2' b
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   319
  |/
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   320
  | o  1: 'b1' b
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   321
  |/
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   322
  o  0: '0'
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   323
  
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   324
  $ hg clone -q . ../case2
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   325
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   326
rebase 'b2' to another lower branch head
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   327
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   328
  $ hg up -qr 2
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   329
  $ hg rebase
28189
fac3a24be50e rebase: choose default destination the same way as 'hg merge' (BC)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26360
diff changeset
   330
  rebasing 2:792845bb77ee "b2"
fac3a24be50e rebase: choose default destination the same way as 'hg merge' (BC)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26360
diff changeset
   331
  note: rebase of 2:792845bb77ee created no changes to commit
33332
3b7cb3d17137 rebase: use scmutil.cleanupnodes (issue5606) (BC)
Jun Wu <quark@fb.com>
parents: 31380
diff changeset
   332
  saved backup bundle to $TESTTMP/case1/.hg/strip-backup/792845bb77ee-627120ee-rebase.hg (glob)
20251
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   333
  $ hg tglog
28189
fac3a24be50e rebase: choose default destination the same way as 'hg merge' (BC)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26360
diff changeset
   334
  o  2: 'c1' c
20251
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   335
  |
28189
fac3a24be50e rebase: choose default destination the same way as 'hg merge' (BC)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26360
diff changeset
   336
  | @  1: 'b1' b
20251
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   337
  |/
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   338
  o  0: '0'
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   339
  
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   340
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   341
rebase 'b1' on top of the tip of the branch ('b2') - ignoring the tip branch ('c1')
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   342
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   343
  $ cd ../case2
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   344
  $ hg up -qr 1
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   345
  $ hg rebase
23517
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
   346
  rebasing 1:40039acb7ca5 "b1"
33332
3b7cb3d17137 rebase: use scmutil.cleanupnodes (issue5606) (BC)
Jun Wu <quark@fb.com>
parents: 31380
diff changeset
   347
  saved backup bundle to $TESTTMP/case2/.hg/strip-backup/40039acb7ca5-342b72d1-rebase.hg (glob)
20251
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   348
  $ hg tglog
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   349
  @  3: 'b1' b
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   350
  |
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   351
  | o  2: 'c1' c
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   352
  | |
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   353
  o |  1: 'b2' b
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   354
  |/
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   355
  o  0: '0'
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   356
  
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   357
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   358
rebase 'c1' to the branch head 'c2' that is closed
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   359
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   360
  $ hg branch -qf c
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   361
  $ hg ci -qm 'c2 closed' --close
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   362
  $ hg up -qr 2
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   363
  $ hg tglog
24216
4bb348ae43cb log: display closing-branch nodes as "_" (BC)
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 23835
diff changeset
   364
  _  4: 'c2 closed' c
20251
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   365
  |
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   366
  o  3: 'b1' b
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   367
  |
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   368
  | @  2: 'c1' c
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   369
  | |
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   370
  o |  1: 'b2' b
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   371
  |/
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   372
  o  0: '0'
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   373
  
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   374
  $ hg rebase
28189
fac3a24be50e rebase: choose default destination the same way as 'hg merge' (BC)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26360
diff changeset
   375
  abort: branch 'c' has one head - please rebase to an explicit rev
fac3a24be50e rebase: choose default destination the same way as 'hg merge' (BC)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26360
diff changeset
   376
  (run 'hg heads' to see all heads)
fac3a24be50e rebase: choose default destination the same way as 'hg merge' (BC)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26360
diff changeset
   377
  [255]
20251
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   378
  $ hg tglog
24216
4bb348ae43cb log: display closing-branch nodes as "_" (BC)
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 23835
diff changeset
   379
  _  4: 'c2 closed' c
20251
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   380
  |
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   381
  o  3: 'b1' b
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   382
  |
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   383
  | @  2: 'c1' c
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   384
  | |
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   385
  o |  1: 'b2' b
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   386
  |/
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   387
  o  0: '0'
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   388
  
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   389
31380
65d93d712777 rebase: allow rebasing children of wd to wd if a new branch has been set (BC)
Mads Kiilerich <mads@kiilerich.com>
parents: 28189
diff changeset
   390
  $ hg up -cr 1
65d93d712777 rebase: allow rebasing children of wd to wd if a new branch has been set (BC)
Mads Kiilerich <mads@kiilerich.com>
parents: 28189
diff changeset
   391
  0 files updated, 0 files merged, 0 files removed, 0 files unresolved
65d93d712777 rebase: allow rebasing children of wd to wd if a new branch has been set (BC)
Mads Kiilerich <mads@kiilerich.com>
parents: 28189
diff changeset
   392
  $ hg branch x
65d93d712777 rebase: allow rebasing children of wd to wd if a new branch has been set (BC)
Mads Kiilerich <mads@kiilerich.com>
parents: 28189
diff changeset
   393
  marked working directory as branch x
65d93d712777 rebase: allow rebasing children of wd to wd if a new branch has been set (BC)
Mads Kiilerich <mads@kiilerich.com>
parents: 28189
diff changeset
   394
  $ hg rebase -r 3:: -d .
65d93d712777 rebase: allow rebasing children of wd to wd if a new branch has been set (BC)
Mads Kiilerich <mads@kiilerich.com>
parents: 28189
diff changeset
   395
  rebasing 3:76abc1c6f8c7 "b1"
65d93d712777 rebase: allow rebasing children of wd to wd if a new branch has been set (BC)
Mads Kiilerich <mads@kiilerich.com>
parents: 28189
diff changeset
   396
  rebasing 4:8427af5d86f2 "c2 closed" (tip)
65d93d712777 rebase: allow rebasing children of wd to wd if a new branch has been set (BC)
Mads Kiilerich <mads@kiilerich.com>
parents: 28189
diff changeset
   397
  note: rebase of 4:8427af5d86f2 created no changes to commit
33332
3b7cb3d17137 rebase: use scmutil.cleanupnodes (issue5606) (BC)
Jun Wu <quark@fb.com>
parents: 31380
diff changeset
   398
  saved backup bundle to $TESTTMP/case2/.hg/strip-backup/76abc1c6f8c7-cd698d13-rebase.hg (glob)
31380
65d93d712777 rebase: allow rebasing children of wd to wd if a new branch has been set (BC)
Mads Kiilerich <mads@kiilerich.com>
parents: 28189
diff changeset
   399
  $ hg tglog
65d93d712777 rebase: allow rebasing children of wd to wd if a new branch has been set (BC)
Mads Kiilerich <mads@kiilerich.com>
parents: 28189
diff changeset
   400
  o  3: 'b1' x
65d93d712777 rebase: allow rebasing children of wd to wd if a new branch has been set (BC)
Mads Kiilerich <mads@kiilerich.com>
parents: 28189
diff changeset
   401
  |
65d93d712777 rebase: allow rebasing children of wd to wd if a new branch has been set (BC)
Mads Kiilerich <mads@kiilerich.com>
parents: 28189
diff changeset
   402
  | o  2: 'c1' c
65d93d712777 rebase: allow rebasing children of wd to wd if a new branch has been set (BC)
Mads Kiilerich <mads@kiilerich.com>
parents: 28189
diff changeset
   403
  | |
65d93d712777 rebase: allow rebasing children of wd to wd if a new branch has been set (BC)
Mads Kiilerich <mads@kiilerich.com>
parents: 28189
diff changeset
   404
  @ |  1: 'b2' b
65d93d712777 rebase: allow rebasing children of wd to wd if a new branch has been set (BC)
Mads Kiilerich <mads@kiilerich.com>
parents: 28189
diff changeset
   405
  |/
65d93d712777 rebase: allow rebasing children of wd to wd if a new branch has been set (BC)
Mads Kiilerich <mads@kiilerich.com>
parents: 28189
diff changeset
   406
  o  0: '0'
65d93d712777 rebase: allow rebasing children of wd to wd if a new branch has been set (BC)
Mads Kiilerich <mads@kiilerich.com>
parents: 28189
diff changeset
   407
  
65d93d712777 rebase: allow rebasing children of wd to wd if a new branch has been set (BC)
Mads Kiilerich <mads@kiilerich.com>
parents: 28189
diff changeset
   408
20251
7876013de139 tests: introduce test for rebasing on named branches with closed heads
Mads Kiilerich <madski@unity3d.com>
parents: 20117
diff changeset
   409
  $ cd ..