tests/test-rebase-pull.t
author Gregory Szorc <gregory.szorc@gmail.com>
Tue, 10 Jan 2017 11:20:32 -0800
changeset 30758 76104a4899ad
parent 30755 0fbb3a5c188e
child 32698 1b5c61d38a52
permissions -rw-r--r--
commands: config option to control bundle compression level Currently, bundle compression uses the default compression level for the active compression engine. The default compression level is tuned as a compromise between speed and size. Some scenarios may call for a different compression level. For example, with clone bundles, bundles are generated once and used several times. Since the cost to generate is paid infrequently, server operators may wish to trade extra CPU time for better compression ratios. This patch introduces an experimental and undocumented config option to control the bundle compression level. As the inline comment says, this approach is a bit hacky. I'd prefer for the compression level to be encoded in the bundle spec. e.g. "zstd-v2;complevel=15." However, given that the 4.1 freeze is imminent, I'm not comfortable implementing this user-facing change without much time to test and consider the implications. So, we're going with the quick and dirty solution for now. Having this option in the 4.1 release will enable Mozilla to easily produce and test zlib and zstd bundles with non-default compression levels in production. This will help drive future development of the feature and zstd integration with Mercurial.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
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=
30725
c2bd2f77965b rebase: fail-fast the pull if working dir is not clean (BC)
Valters Vingolds <valters@vingolds.ch>
parents: 29044
diff changeset
     4
  > histedit=
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
     5
  > 
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
     6
  > [alias]
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
     7
  > tglog = log -G --template "{rev}: '{desc}' {branches}\n"
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
     8
  > EOF
6906
808f03f61ebe Add rebase extension
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
     9
11198
b345b1cc124f rebase: use helpers.sh in tests
Matt Mackall <mpm@selenic.com>
parents: 10775
diff changeset
    10
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
    11
  $ hg init a
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
    12
  $ cd a
6906
808f03f61ebe Add rebase extension
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
    13
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
    14
  $ echo C1 > C1
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
    15
  $ hg ci -Am C1
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
    16
  adding C1
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
    17
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
    18
  $ echo C2 > C2
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
    19
  $ hg ci -Am C2
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
    20
  adding C2
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
    21
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
    22
  $ cd ..
6910
93609576244e Debashify rebase tests
Brendan Cully <brendan@kublai.com>
parents: 6906
diff changeset
    23
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
    24
  $ hg clone a b
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
    25
  updating to branch default
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
    26
  2 files updated, 0 files merged, 0 files removed, 0 files unresolved
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
    27
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
    28
  $ hg clone a c
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
    29
  updating to branch default
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
    30
  2 files updated, 0 files merged, 0 files removed, 0 files unresolved
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
  $ cd b
6906
808f03f61ebe Add rebase extension
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
    33
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
    34
  $ echo L1 > L1
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
    35
  $ hg ci -Am L1
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
    36
  adding L1
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
    37
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
    38
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
    39
  $ cd ../a
6906
808f03f61ebe Add rebase extension
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
    40
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
    41
  $ echo R1 > R1
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
    42
  $ hg ci -Am R1
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
    43
  adding R1
7786
92455c1d6f83 rebase: pull --rebase updates if there is nothing to rebase
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 6910
diff changeset
    44
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
  $ cd ../b
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
    47
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
    48
Now b has one revision to be pulled from a:
6906
808f03f61ebe Add rebase extension
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
    49
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
    50
  $ hg pull --rebase
15447
9910f60a37ee tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents: 12640
diff changeset
    51
  pulling from $TESTTMP/a (glob)
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
    52
  searching for changes
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
    53
  adding changesets
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
    54
  adding manifests
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
    55
  adding file changes
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
    56
  added 1 changesets with 1 changes to 1 files (+1 heads)
23517
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
    57
  rebasing 2:ff8d69a621f9 "L1"
23835
aa4a1672583e bundles: do not overwrite existing backup bundles (BC)
Durham Goode <durham@fb.com>
parents: 23517
diff changeset
    58
  saved backup bundle to $TESTTMP/b/.hg/strip-backup/ff8d69a621f9-160fa373-backup.hg (glob)
6906
808f03f61ebe Add rebase extension
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
    59
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
    60
  $ hg tglog
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
    61
  @  3: 'L1'
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
    62
  |
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
    63
  o  2: 'R1'
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
    64
  |
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
    65
  o  1: 'C2'
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
    66
  |
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
    67
  o  0: 'C1'
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
    68
  
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
    69
Re-run:
6906
808f03f61ebe Add rebase extension
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
    70
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
    71
  $ hg pull --rebase
15447
9910f60a37ee tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents: 12640
diff changeset
    72
  pulling from $TESTTMP/a (glob)
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
    73
  searching for changes
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
    74
  no changes found
6906
808f03f61ebe Add rebase extension
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
    75
30725
c2bd2f77965b rebase: fail-fast the pull if working dir is not clean (BC)
Valters Vingolds <valters@vingolds.ch>
parents: 29044
diff changeset
    76
Abort pull early if working dir is not clean:
c2bd2f77965b rebase: fail-fast the pull if working dir is not clean (BC)
Valters Vingolds <valters@vingolds.ch>
parents: 29044
diff changeset
    77
c2bd2f77965b rebase: fail-fast the pull if working dir is not clean (BC)
Valters Vingolds <valters@vingolds.ch>
parents: 29044
diff changeset
    78
  $ echo L1-mod > L1
c2bd2f77965b rebase: fail-fast the pull if working dir is not clean (BC)
Valters Vingolds <valters@vingolds.ch>
parents: 29044
diff changeset
    79
  $ hg pull --rebase
c2bd2f77965b rebase: fail-fast the pull if working dir is not clean (BC)
Valters Vingolds <valters@vingolds.ch>
parents: 29044
diff changeset
    80
  abort: uncommitted changes
30755
0fbb3a5c188e rebase: provide detailed hint to abort message if working dir is not clean
Valters Vingolds <valters@vingolds.ch>
parents: 30725
diff changeset
    81
  (cannot pull with rebase: please commit or shelve your changes first)
30725
c2bd2f77965b rebase: fail-fast the pull if working dir is not clean (BC)
Valters Vingolds <valters@vingolds.ch>
parents: 29044
diff changeset
    82
  [255]
c2bd2f77965b rebase: fail-fast the pull if working dir is not clean (BC)
Valters Vingolds <valters@vingolds.ch>
parents: 29044
diff changeset
    83
  $ hg update --clean --quiet
c2bd2f77965b rebase: fail-fast the pull if working dir is not clean (BC)
Valters Vingolds <valters@vingolds.ch>
parents: 29044
diff changeset
    84
c2bd2f77965b rebase: fail-fast the pull if working dir is not clean (BC)
Valters Vingolds <valters@vingolds.ch>
parents: 29044
diff changeset
    85
Abort pull early if another operation (histedit) is in progress:
c2bd2f77965b rebase: fail-fast the pull if working dir is not clean (BC)
Valters Vingolds <valters@vingolds.ch>
parents: 29044
diff changeset
    86
c2bd2f77965b rebase: fail-fast the pull if working dir is not clean (BC)
Valters Vingolds <valters@vingolds.ch>
parents: 29044
diff changeset
    87
  $ hg histedit . -q --commands - << EOF
c2bd2f77965b rebase: fail-fast the pull if working dir is not clean (BC)
Valters Vingolds <valters@vingolds.ch>
parents: 29044
diff changeset
    88
  > edit d80cc2da061e histedit: generate unfinished state
c2bd2f77965b rebase: fail-fast the pull if working dir is not clean (BC)
Valters Vingolds <valters@vingolds.ch>
parents: 29044
diff changeset
    89
  > EOF
c2bd2f77965b rebase: fail-fast the pull if working dir is not clean (BC)
Valters Vingolds <valters@vingolds.ch>
parents: 29044
diff changeset
    90
  Editing (d80cc2da061e), you may commit or record as needed now.
c2bd2f77965b rebase: fail-fast the pull if working dir is not clean (BC)
Valters Vingolds <valters@vingolds.ch>
parents: 29044
diff changeset
    91
  (hg histedit --continue to resume)
c2bd2f77965b rebase: fail-fast the pull if working dir is not clean (BC)
Valters Vingolds <valters@vingolds.ch>
parents: 29044
diff changeset
    92
  [1]
c2bd2f77965b rebase: fail-fast the pull if working dir is not clean (BC)
Valters Vingolds <valters@vingolds.ch>
parents: 29044
diff changeset
    93
  $ hg pull --rebase
c2bd2f77965b rebase: fail-fast the pull if working dir is not clean (BC)
Valters Vingolds <valters@vingolds.ch>
parents: 29044
diff changeset
    94
  abort: histedit in progress
c2bd2f77965b rebase: fail-fast the pull if working dir is not clean (BC)
Valters Vingolds <valters@vingolds.ch>
parents: 29044
diff changeset
    95
  (use 'hg histedit --continue' or 'hg histedit --abort')
c2bd2f77965b rebase: fail-fast the pull if working dir is not clean (BC)
Valters Vingolds <valters@vingolds.ch>
parents: 29044
diff changeset
    96
  [255]
c2bd2f77965b rebase: fail-fast the pull if working dir is not clean (BC)
Valters Vingolds <valters@vingolds.ch>
parents: 29044
diff changeset
    97
  $ hg histedit --abort --quiet
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
    98
30755
0fbb3a5c188e rebase: provide detailed hint to abort message if working dir is not clean
Valters Vingolds <valters@vingolds.ch>
parents: 30725
diff changeset
    99
Abort pull early with pending uncommitted merge:
0fbb3a5c188e rebase: provide detailed hint to abort message if working dir is not clean
Valters Vingolds <valters@vingolds.ch>
parents: 30725
diff changeset
   100
0fbb3a5c188e rebase: provide detailed hint to abort message if working dir is not clean
Valters Vingolds <valters@vingolds.ch>
parents: 30725
diff changeset
   101
  $ cd ..
0fbb3a5c188e rebase: provide detailed hint to abort message if working dir is not clean
Valters Vingolds <valters@vingolds.ch>
parents: 30725
diff changeset
   102
  $ hg clone --noupdate c d
0fbb3a5c188e rebase: provide detailed hint to abort message if working dir is not clean
Valters Vingolds <valters@vingolds.ch>
parents: 30725
diff changeset
   103
  $ cd d
0fbb3a5c188e rebase: provide detailed hint to abort message if working dir is not clean
Valters Vingolds <valters@vingolds.ch>
parents: 30725
diff changeset
   104
  $ hg tglog
0fbb3a5c188e rebase: provide detailed hint to abort message if working dir is not clean
Valters Vingolds <valters@vingolds.ch>
parents: 30725
diff changeset
   105
  o  1: 'C2'
0fbb3a5c188e rebase: provide detailed hint to abort message if working dir is not clean
Valters Vingolds <valters@vingolds.ch>
parents: 30725
diff changeset
   106
  |
0fbb3a5c188e rebase: provide detailed hint to abort message if working dir is not clean
Valters Vingolds <valters@vingolds.ch>
parents: 30725
diff changeset
   107
  o  0: 'C1'
0fbb3a5c188e rebase: provide detailed hint to abort message if working dir is not clean
Valters Vingolds <valters@vingolds.ch>
parents: 30725
diff changeset
   108
  
0fbb3a5c188e rebase: provide detailed hint to abort message if working dir is not clean
Valters Vingolds <valters@vingolds.ch>
parents: 30725
diff changeset
   109
  $ hg update --quiet 0
0fbb3a5c188e rebase: provide detailed hint to abort message if working dir is not clean
Valters Vingolds <valters@vingolds.ch>
parents: 30725
diff changeset
   110
  $ echo M1 > M1
0fbb3a5c188e rebase: provide detailed hint to abort message if working dir is not clean
Valters Vingolds <valters@vingolds.ch>
parents: 30725
diff changeset
   111
  $ hg commit --quiet -Am M1
0fbb3a5c188e rebase: provide detailed hint to abort message if working dir is not clean
Valters Vingolds <valters@vingolds.ch>
parents: 30725
diff changeset
   112
  $ hg update --quiet 1
0fbb3a5c188e rebase: provide detailed hint to abort message if working dir is not clean
Valters Vingolds <valters@vingolds.ch>
parents: 30725
diff changeset
   113
  $ hg merge 2
0fbb3a5c188e rebase: provide detailed hint to abort message if working dir is not clean
Valters Vingolds <valters@vingolds.ch>
parents: 30725
diff changeset
   114
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
0fbb3a5c188e rebase: provide detailed hint to abort message if working dir is not clean
Valters Vingolds <valters@vingolds.ch>
parents: 30725
diff changeset
   115
  (branch merge, don't forget to commit)
0fbb3a5c188e rebase: provide detailed hint to abort message if working dir is not clean
Valters Vingolds <valters@vingolds.ch>
parents: 30725
diff changeset
   116
  $ hg pull --rebase
0fbb3a5c188e rebase: provide detailed hint to abort message if working dir is not clean
Valters Vingolds <valters@vingolds.ch>
parents: 30725
diff changeset
   117
  abort: outstanding uncommitted merge
0fbb3a5c188e rebase: provide detailed hint to abort message if working dir is not clean
Valters Vingolds <valters@vingolds.ch>
parents: 30725
diff changeset
   118
  (cannot pull with rebase: please commit or shelve your changes first)
0fbb3a5c188e rebase: provide detailed hint to abort message if working dir is not clean
Valters Vingolds <valters@vingolds.ch>
parents: 30725
diff changeset
   119
  [255]
0fbb3a5c188e rebase: provide detailed hint to abort message if working dir is not clean
Valters Vingolds <valters@vingolds.ch>
parents: 30725
diff changeset
   120
  $ hg update --clean --quiet
0fbb3a5c188e rebase: provide detailed hint to abort message if working dir is not clean
Valters Vingolds <valters@vingolds.ch>
parents: 30725
diff changeset
   121
0fbb3a5c188e rebase: provide detailed hint to abort message if working dir is not clean
Valters Vingolds <valters@vingolds.ch>
parents: 30725
diff changeset
   122
Abort pull early with unclean subrepo:
0fbb3a5c188e rebase: provide detailed hint to abort message if working dir is not clean
Valters Vingolds <valters@vingolds.ch>
parents: 30725
diff changeset
   123
  $ echo s = s > .hgsub
0fbb3a5c188e rebase: provide detailed hint to abort message if working dir is not clean
Valters Vingolds <valters@vingolds.ch>
parents: 30725
diff changeset
   124
  $ hg add .hgsub
0fbb3a5c188e rebase: provide detailed hint to abort message if working dir is not clean
Valters Vingolds <valters@vingolds.ch>
parents: 30725
diff changeset
   125
  $ hg init s
0fbb3a5c188e rebase: provide detailed hint to abort message if working dir is not clean
Valters Vingolds <valters@vingolds.ch>
parents: 30725
diff changeset
   126
  $ hg commit -m "generated a subrepo"
0fbb3a5c188e rebase: provide detailed hint to abort message if working dir is not clean
Valters Vingolds <valters@vingolds.ch>
parents: 30725
diff changeset
   127
  $ echo a > s/a
0fbb3a5c188e rebase: provide detailed hint to abort message if working dir is not clean
Valters Vingolds <valters@vingolds.ch>
parents: 30725
diff changeset
   128
  $ hg -R s add s/a
0fbb3a5c188e rebase: provide detailed hint to abort message if working dir is not clean
Valters Vingolds <valters@vingolds.ch>
parents: 30725
diff changeset
   129
  $ hg pull --rebase
0fbb3a5c188e rebase: provide detailed hint to abort message if working dir is not clean
Valters Vingolds <valters@vingolds.ch>
parents: 30725
diff changeset
   130
  abort: uncommitted changes in subrepository 's'
0fbb3a5c188e rebase: provide detailed hint to abort message if working dir is not clean
Valters Vingolds <valters@vingolds.ch>
parents: 30725
diff changeset
   131
  (cannot pull with rebase: please commit or shelve your changes first)
0fbb3a5c188e rebase: provide detailed hint to abort message if working dir is not clean
Valters Vingolds <valters@vingolds.ch>
parents: 30725
diff changeset
   132
  [255]
0fbb3a5c188e rebase: provide detailed hint to abort message if working dir is not clean
Valters Vingolds <valters@vingolds.ch>
parents: 30725
diff changeset
   133
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
   134
Invoke pull --rebase and nothing to rebase:
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
   135
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
   136
  $ cd ../c
6906
808f03f61ebe Add rebase extension
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
   137
16228
5b41d5ad52bf rebase: move bookmarks as needed with pull --rebase (issue3285)
Matt Mackall <mpm@selenic.com>
parents: 15447
diff changeset
   138
  $ hg book norebase
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
   139
  $ hg pull --rebase
15447
9910f60a37ee tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents: 12640
diff changeset
   140
  pulling from $TESTTMP/a (glob)
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
   141
  searching for changes
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
   142
  adding changesets
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
   143
  adding manifests
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
   144
  adding file changes
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
   145
  added 1 changesets with 1 changes to 1 files
28189
fac3a24be50e rebase: choose default destination the same way as 'hg merge' (BC)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28118
diff changeset
   146
  nothing to rebase - updating instead
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
   147
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
16228
5b41d5ad52bf rebase: move bookmarks as needed with pull --rebase (issue3285)
Matt Mackall <mpm@selenic.com>
parents: 15447
diff changeset
   148
  updating bookmark norebase
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
   149
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
   150
  $ hg tglog -l 1
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
   151
  @  2: 'R1'
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
   152
  |
28627
d7af9b4ae7dd graphmod: set default edge styles for ascii graphs (BC)
Martijn Pieters <mjpieters@fb.com>
parents: 28189
diff changeset
   153
  ~
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
   154
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
   155
pull --rebase --update should ignore --update:
7786
92455c1d6f83 rebase: pull --rebase updates if there is nothing to rebase
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 6910
diff changeset
   156
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
   157
  $ hg pull --rebase --update
15447
9910f60a37ee tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents: 12640
diff changeset
   158
  pulling from $TESTTMP/a (glob)
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
   159
  searching for changes
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
   160
  no changes found
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
   161
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
   162
pull --rebase doesn't update if nothing has been pulled:
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
   163
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
   164
  $ hg up -q 1
8242
aee8455ee8ec Fix typeerror when specifying both --rebase and --pull
Martijn Pieters <mj@zopatista.com>
parents: 7786
diff changeset
   165
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
   166
  $ hg pull --rebase
15447
9910f60a37ee tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents: 12640
diff changeset
   167
  pulling from $TESTTMP/a (glob)
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
   168
  searching for changes
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
   169
  no changes found
6906
808f03f61ebe Add rebase extension
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
   170
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
   171
  $ hg tglog -l 1
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
   172
  o  2: 'R1'
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
   173
  |
28627
d7af9b4ae7dd graphmod: set default edge styles for ascii graphs (BC)
Martijn Pieters <mjpieters@fb.com>
parents: 28189
diff changeset
   174
  ~
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11208
diff changeset
   175
16913
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 16228
diff changeset
   176
  $ cd ..
17988
848345a8d6ad rebase: fix pull --rev options clashing with --rebase (issue3619)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16913
diff changeset
   177
848345a8d6ad rebase: fix pull --rev options clashing with --rebase (issue3619)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16913
diff changeset
   178
pull --rebase works when a specific revision is pulled (issue3619)
848345a8d6ad rebase: fix pull --rev options clashing with --rebase (issue3619)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16913
diff changeset
   179
848345a8d6ad rebase: fix pull --rev options clashing with --rebase (issue3619)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16913
diff changeset
   180
  $ cd a
848345a8d6ad rebase: fix pull --rev options clashing with --rebase (issue3619)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16913
diff changeset
   181
  $ hg tglog
848345a8d6ad rebase: fix pull --rev options clashing with --rebase (issue3619)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16913
diff changeset
   182
  @  2: 'R1'
848345a8d6ad rebase: fix pull --rev options clashing with --rebase (issue3619)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16913
diff changeset
   183
  |
848345a8d6ad rebase: fix pull --rev options clashing with --rebase (issue3619)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16913
diff changeset
   184
  o  1: 'C2'
848345a8d6ad rebase: fix pull --rev options clashing with --rebase (issue3619)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16913
diff changeset
   185
  |
848345a8d6ad rebase: fix pull --rev options clashing with --rebase (issue3619)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16913
diff changeset
   186
  o  0: 'C1'
848345a8d6ad rebase: fix pull --rev options clashing with --rebase (issue3619)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16913
diff changeset
   187
  
848345a8d6ad rebase: fix pull --rev options clashing with --rebase (issue3619)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16913
diff changeset
   188
  $ echo R2 > R2
848345a8d6ad rebase: fix pull --rev options clashing with --rebase (issue3619)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16913
diff changeset
   189
  $ hg ci -Am R2
848345a8d6ad rebase: fix pull --rev options clashing with --rebase (issue3619)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16913
diff changeset
   190
  adding R2
848345a8d6ad rebase: fix pull --rev options clashing with --rebase (issue3619)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16913
diff changeset
   191
  $ echo R3 > R3
848345a8d6ad rebase: fix pull --rev options clashing with --rebase (issue3619)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16913
diff changeset
   192
  $ hg ci -Am R3
848345a8d6ad rebase: fix pull --rev options clashing with --rebase (issue3619)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16913
diff changeset
   193
  adding R3
848345a8d6ad rebase: fix pull --rev options clashing with --rebase (issue3619)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16913
diff changeset
   194
  $ cd ../c
848345a8d6ad rebase: fix pull --rev options clashing with --rebase (issue3619)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16913
diff changeset
   195
  $ hg tglog
848345a8d6ad rebase: fix pull --rev options clashing with --rebase (issue3619)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16913
diff changeset
   196
  o  2: 'R1'
848345a8d6ad rebase: fix pull --rev options clashing with --rebase (issue3619)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16913
diff changeset
   197
  |
848345a8d6ad rebase: fix pull --rev options clashing with --rebase (issue3619)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16913
diff changeset
   198
  @  1: 'C2'
848345a8d6ad rebase: fix pull --rev options clashing with --rebase (issue3619)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16913
diff changeset
   199
  |
848345a8d6ad rebase: fix pull --rev options clashing with --rebase (issue3619)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16913
diff changeset
   200
  o  0: 'C1'
848345a8d6ad rebase: fix pull --rev options clashing with --rebase (issue3619)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16913
diff changeset
   201
  
848345a8d6ad rebase: fix pull --rev options clashing with --rebase (issue3619)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16913
diff changeset
   202
  $ echo L1 > L1
848345a8d6ad rebase: fix pull --rev options clashing with --rebase (issue3619)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16913
diff changeset
   203
  $ hg ci -Am L1
848345a8d6ad rebase: fix pull --rev options clashing with --rebase (issue3619)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16913
diff changeset
   204
  adding L1
848345a8d6ad rebase: fix pull --rev options clashing with --rebase (issue3619)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16913
diff changeset
   205
  created new head
848345a8d6ad rebase: fix pull --rev options clashing with --rebase (issue3619)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16913
diff changeset
   206
  $ hg pull --rev tip --rebase
18108
bc694d78d843 tests: fix some slash-based Windows failures
Kevin Bullock <kbullock@ringworld.org>
parents: 17988
diff changeset
   207
  pulling from $TESTTMP/a (glob)
17988
848345a8d6ad rebase: fix pull --rev options clashing with --rebase (issue3619)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16913
diff changeset
   208
  searching for changes
848345a8d6ad rebase: fix pull --rev options clashing with --rebase (issue3619)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16913
diff changeset
   209
  adding changesets
848345a8d6ad rebase: fix pull --rev options clashing with --rebase (issue3619)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16913
diff changeset
   210
  adding manifests
848345a8d6ad rebase: fix pull --rev options clashing with --rebase (issue3619)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16913
diff changeset
   211
  adding file changes
848345a8d6ad rebase: fix pull --rev options clashing with --rebase (issue3619)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16913
diff changeset
   212
  added 2 changesets with 2 changes to 2 files
23517
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23516
diff changeset
   213
  rebasing 3:ff8d69a621f9 "L1"
23835
aa4a1672583e bundles: do not overwrite existing backup bundles (BC)
Durham Goode <durham@fb.com>
parents: 23517
diff changeset
   214
  saved backup bundle to $TESTTMP/c/.hg/strip-backup/ff8d69a621f9-160fa373-backup.hg (glob)
17988
848345a8d6ad rebase: fix pull --rev options clashing with --rebase (issue3619)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16913
diff changeset
   215
  $ hg tglog
848345a8d6ad rebase: fix pull --rev options clashing with --rebase (issue3619)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16913
diff changeset
   216
  @  5: 'L1'
848345a8d6ad rebase: fix pull --rev options clashing with --rebase (issue3619)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16913
diff changeset
   217
  |
848345a8d6ad rebase: fix pull --rev options clashing with --rebase (issue3619)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16913
diff changeset
   218
  o  4: 'R3'
848345a8d6ad rebase: fix pull --rev options clashing with --rebase (issue3619)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16913
diff changeset
   219
  |
848345a8d6ad rebase: fix pull --rev options clashing with --rebase (issue3619)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16913
diff changeset
   220
  o  3: 'R2'
848345a8d6ad rebase: fix pull --rev options clashing with --rebase (issue3619)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16913
diff changeset
   221
  |
848345a8d6ad rebase: fix pull --rev options clashing with --rebase (issue3619)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16913
diff changeset
   222
  o  2: 'R1'
848345a8d6ad rebase: fix pull --rev options clashing with --rebase (issue3619)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16913
diff changeset
   223
  |
848345a8d6ad rebase: fix pull --rev options clashing with --rebase (issue3619)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16913
diff changeset
   224
  o  1: 'C2'
848345a8d6ad rebase: fix pull --rev options clashing with --rebase (issue3619)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16913
diff changeset
   225
  |
848345a8d6ad rebase: fix pull --rev options clashing with --rebase (issue3619)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16913
diff changeset
   226
  o  0: 'C1'
848345a8d6ad rebase: fix pull --rev options clashing with --rebase (issue3619)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16913
diff changeset
   227
  
24170
fbc4d550a6ab repair: setup hookargs when processing bundle2s
Eric Sumner <ericsumner@fb.com>
parents: 23835
diff changeset
   228
pull --rebase works with bundle2 turned on
17988
848345a8d6ad rebase: fix pull --rev options clashing with --rebase (issue3619)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16913
diff changeset
   229
24170
fbc4d550a6ab repair: setup hookargs when processing bundle2s
Eric Sumner <ericsumner@fb.com>
parents: 23835
diff changeset
   230
  $ cd ../a
fbc4d550a6ab repair: setup hookargs when processing bundle2s
Eric Sumner <ericsumner@fb.com>
parents: 23835
diff changeset
   231
  $ echo R4 > R4
fbc4d550a6ab repair: setup hookargs when processing bundle2s
Eric Sumner <ericsumner@fb.com>
parents: 23835
diff changeset
   232
  $ hg ci -Am R4
fbc4d550a6ab repair: setup hookargs when processing bundle2s
Eric Sumner <ericsumner@fb.com>
parents: 23835
diff changeset
   233
  adding R4
fbc4d550a6ab repair: setup hookargs when processing bundle2s
Eric Sumner <ericsumner@fb.com>
parents: 23835
diff changeset
   234
  $ hg tglog
fbc4d550a6ab repair: setup hookargs when processing bundle2s
Eric Sumner <ericsumner@fb.com>
parents: 23835
diff changeset
   235
  @  5: 'R4'
fbc4d550a6ab repair: setup hookargs when processing bundle2s
Eric Sumner <ericsumner@fb.com>
parents: 23835
diff changeset
   236
  |
fbc4d550a6ab repair: setup hookargs when processing bundle2s
Eric Sumner <ericsumner@fb.com>
parents: 23835
diff changeset
   237
  o  4: 'R3'
fbc4d550a6ab repair: setup hookargs when processing bundle2s
Eric Sumner <ericsumner@fb.com>
parents: 23835
diff changeset
   238
  |
fbc4d550a6ab repair: setup hookargs when processing bundle2s
Eric Sumner <ericsumner@fb.com>
parents: 23835
diff changeset
   239
  o  3: 'R2'
fbc4d550a6ab repair: setup hookargs when processing bundle2s
Eric Sumner <ericsumner@fb.com>
parents: 23835
diff changeset
   240
  |
fbc4d550a6ab repair: setup hookargs when processing bundle2s
Eric Sumner <ericsumner@fb.com>
parents: 23835
diff changeset
   241
  o  2: 'R1'
fbc4d550a6ab repair: setup hookargs when processing bundle2s
Eric Sumner <ericsumner@fb.com>
parents: 23835
diff changeset
   242
  |
fbc4d550a6ab repair: setup hookargs when processing bundle2s
Eric Sumner <ericsumner@fb.com>
parents: 23835
diff changeset
   243
  o  1: 'C2'
fbc4d550a6ab repair: setup hookargs when processing bundle2s
Eric Sumner <ericsumner@fb.com>
parents: 23835
diff changeset
   244
  |
fbc4d550a6ab repair: setup hookargs when processing bundle2s
Eric Sumner <ericsumner@fb.com>
parents: 23835
diff changeset
   245
  o  0: 'C1'
fbc4d550a6ab repair: setup hookargs when processing bundle2s
Eric Sumner <ericsumner@fb.com>
parents: 23835
diff changeset
   246
  
fbc4d550a6ab repair: setup hookargs when processing bundle2s
Eric Sumner <ericsumner@fb.com>
parents: 23835
diff changeset
   247
  $ cd ../c
26423
c93f91c1db1c strip: use bundle2 + cg2 by default when repository use general delta
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 24170
diff changeset
   248
  $ hg pull --rebase
24170
fbc4d550a6ab repair: setup hookargs when processing bundle2s
Eric Sumner <ericsumner@fb.com>
parents: 23835
diff changeset
   249
  pulling from $TESTTMP/a (glob)
fbc4d550a6ab repair: setup hookargs when processing bundle2s
Eric Sumner <ericsumner@fb.com>
parents: 23835
diff changeset
   250
  searching for changes
fbc4d550a6ab repair: setup hookargs when processing bundle2s
Eric Sumner <ericsumner@fb.com>
parents: 23835
diff changeset
   251
  adding changesets
fbc4d550a6ab repair: setup hookargs when processing bundle2s
Eric Sumner <ericsumner@fb.com>
parents: 23835
diff changeset
   252
  adding manifests
fbc4d550a6ab repair: setup hookargs when processing bundle2s
Eric Sumner <ericsumner@fb.com>
parents: 23835
diff changeset
   253
  adding file changes
fbc4d550a6ab repair: setup hookargs when processing bundle2s
Eric Sumner <ericsumner@fb.com>
parents: 23835
diff changeset
   254
  added 1 changesets with 1 changes to 1 files (+1 heads)
fbc4d550a6ab repair: setup hookargs when processing bundle2s
Eric Sumner <ericsumner@fb.com>
parents: 23835
diff changeset
   255
  rebasing 5:518d153c0ba3 "L1"
fbc4d550a6ab repair: setup hookargs when processing bundle2s
Eric Sumner <ericsumner@fb.com>
parents: 23835
diff changeset
   256
  saved backup bundle to $TESTTMP/c/.hg/strip-backup/518d153c0ba3-73407f14-backup.hg (glob)
fbc4d550a6ab repair: setup hookargs when processing bundle2s
Eric Sumner <ericsumner@fb.com>
parents: 23835
diff changeset
   257
  $ hg tglog
fbc4d550a6ab repair: setup hookargs when processing bundle2s
Eric Sumner <ericsumner@fb.com>
parents: 23835
diff changeset
   258
  @  6: 'L1'
fbc4d550a6ab repair: setup hookargs when processing bundle2s
Eric Sumner <ericsumner@fb.com>
parents: 23835
diff changeset
   259
  |
fbc4d550a6ab repair: setup hookargs when processing bundle2s
Eric Sumner <ericsumner@fb.com>
parents: 23835
diff changeset
   260
  o  5: 'R4'
fbc4d550a6ab repair: setup hookargs when processing bundle2s
Eric Sumner <ericsumner@fb.com>
parents: 23835
diff changeset
   261
  |
fbc4d550a6ab repair: setup hookargs when processing bundle2s
Eric Sumner <ericsumner@fb.com>
parents: 23835
diff changeset
   262
  o  4: 'R3'
fbc4d550a6ab repair: setup hookargs when processing bundle2s
Eric Sumner <ericsumner@fb.com>
parents: 23835
diff changeset
   263
  |
fbc4d550a6ab repair: setup hookargs when processing bundle2s
Eric Sumner <ericsumner@fb.com>
parents: 23835
diff changeset
   264
  o  3: 'R2'
fbc4d550a6ab repair: setup hookargs when processing bundle2s
Eric Sumner <ericsumner@fb.com>
parents: 23835
diff changeset
   265
  |
fbc4d550a6ab repair: setup hookargs when processing bundle2s
Eric Sumner <ericsumner@fb.com>
parents: 23835
diff changeset
   266
  o  2: 'R1'
fbc4d550a6ab repair: setup hookargs when processing bundle2s
Eric Sumner <ericsumner@fb.com>
parents: 23835
diff changeset
   267
  |
fbc4d550a6ab repair: setup hookargs when processing bundle2s
Eric Sumner <ericsumner@fb.com>
parents: 23835
diff changeset
   268
  o  1: 'C2'
fbc4d550a6ab repair: setup hookargs when processing bundle2s
Eric Sumner <ericsumner@fb.com>
parents: 23835
diff changeset
   269
  |
fbc4d550a6ab repair: setup hookargs when processing bundle2s
Eric Sumner <ericsumner@fb.com>
parents: 23835
diff changeset
   270
  o  0: 'C1'
fbc4d550a6ab repair: setup hookargs when processing bundle2s
Eric Sumner <ericsumner@fb.com>
parents: 23835
diff changeset
   271
  
28117
41a0fb2b4bbc rebase: 'hg pull --rebase' now update only if there was nothing to rebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26423
diff changeset
   272
41a0fb2b4bbc rebase: 'hg pull --rebase' now update only if there was nothing to rebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26423
diff changeset
   273
pull --rebase only update if there is nothing to rebase
41a0fb2b4bbc rebase: 'hg pull --rebase' now update only if there was nothing to rebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26423
diff changeset
   274
41a0fb2b4bbc rebase: 'hg pull --rebase' now update only if there was nothing to rebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26423
diff changeset
   275
  $ cd ../a
41a0fb2b4bbc rebase: 'hg pull --rebase' now update only if there was nothing to rebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26423
diff changeset
   276
  $ echo R5 > R5
41a0fb2b4bbc rebase: 'hg pull --rebase' now update only if there was nothing to rebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26423
diff changeset
   277
  $ hg ci -Am R5
41a0fb2b4bbc rebase: 'hg pull --rebase' now update only if there was nothing to rebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26423
diff changeset
   278
  adding R5
41a0fb2b4bbc rebase: 'hg pull --rebase' now update only if there was nothing to rebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26423
diff changeset
   279
  $ hg tglog
41a0fb2b4bbc rebase: 'hg pull --rebase' now update only if there was nothing to rebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26423
diff changeset
   280
  @  6: 'R5'
41a0fb2b4bbc rebase: 'hg pull --rebase' now update only if there was nothing to rebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26423
diff changeset
   281
  |
41a0fb2b4bbc rebase: 'hg pull --rebase' now update only if there was nothing to rebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26423
diff changeset
   282
  o  5: 'R4'
41a0fb2b4bbc rebase: 'hg pull --rebase' now update only if there was nothing to rebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26423
diff changeset
   283
  |
41a0fb2b4bbc rebase: 'hg pull --rebase' now update only if there was nothing to rebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26423
diff changeset
   284
  o  4: 'R3'
41a0fb2b4bbc rebase: 'hg pull --rebase' now update only if there was nothing to rebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26423
diff changeset
   285
  |
41a0fb2b4bbc rebase: 'hg pull --rebase' now update only if there was nothing to rebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26423
diff changeset
   286
  o  3: 'R2'
41a0fb2b4bbc rebase: 'hg pull --rebase' now update only if there was nothing to rebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26423
diff changeset
   287
  |
41a0fb2b4bbc rebase: 'hg pull --rebase' now update only if there was nothing to rebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26423
diff changeset
   288
  o  2: 'R1'
41a0fb2b4bbc rebase: 'hg pull --rebase' now update only if there was nothing to rebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26423
diff changeset
   289
  |
41a0fb2b4bbc rebase: 'hg pull --rebase' now update only if there was nothing to rebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26423
diff changeset
   290
  o  1: 'C2'
41a0fb2b4bbc rebase: 'hg pull --rebase' now update only if there was nothing to rebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26423
diff changeset
   291
  |
41a0fb2b4bbc rebase: 'hg pull --rebase' now update only if there was nothing to rebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26423
diff changeset
   292
  o  0: 'C1'
41a0fb2b4bbc rebase: 'hg pull --rebase' now update only if there was nothing to rebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26423
diff changeset
   293
  
41a0fb2b4bbc rebase: 'hg pull --rebase' now update only if there was nothing to rebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26423
diff changeset
   294
  $ cd ../c
41a0fb2b4bbc rebase: 'hg pull --rebase' now update only if there was nothing to rebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26423
diff changeset
   295
  $ echo L2 > L2
41a0fb2b4bbc rebase: 'hg pull --rebase' now update only if there was nothing to rebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26423
diff changeset
   296
  $ hg ci -Am L2
41a0fb2b4bbc rebase: 'hg pull --rebase' now update only if there was nothing to rebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26423
diff changeset
   297
  adding L2
41a0fb2b4bbc rebase: 'hg pull --rebase' now update only if there was nothing to rebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26423
diff changeset
   298
  $ hg up 'desc(L1)'
41a0fb2b4bbc rebase: 'hg pull --rebase' now update only if there was nothing to rebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26423
diff changeset
   299
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
41a0fb2b4bbc rebase: 'hg pull --rebase' now update only if there was nothing to rebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26423
diff changeset
   300
  $ hg pull --rebase
41a0fb2b4bbc rebase: 'hg pull --rebase' now update only if there was nothing to rebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26423
diff changeset
   301
  pulling from $TESTTMP/a (glob)
41a0fb2b4bbc rebase: 'hg pull --rebase' now update only if there was nothing to rebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26423
diff changeset
   302
  searching for changes
41a0fb2b4bbc rebase: 'hg pull --rebase' now update only if there was nothing to rebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26423
diff changeset
   303
  adding changesets
41a0fb2b4bbc rebase: 'hg pull --rebase' now update only if there was nothing to rebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26423
diff changeset
   304
  adding manifests
41a0fb2b4bbc rebase: 'hg pull --rebase' now update only if there was nothing to rebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26423
diff changeset
   305
  adding file changes
41a0fb2b4bbc rebase: 'hg pull --rebase' now update only if there was nothing to rebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26423
diff changeset
   306
  added 1 changesets with 1 changes to 1 files (+1 heads)
41a0fb2b4bbc rebase: 'hg pull --rebase' now update only if there was nothing to rebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26423
diff changeset
   307
  rebasing 6:0d0727eb7ce0 "L1"
41a0fb2b4bbc rebase: 'hg pull --rebase' now update only if there was nothing to rebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26423
diff changeset
   308
  rebasing 7:c1f58876e3bf "L2"
41a0fb2b4bbc rebase: 'hg pull --rebase' now update only if there was nothing to rebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26423
diff changeset
   309
  saved backup bundle to $TESTTMP/c/.hg/strip-backup/0d0727eb7ce0-ef61ccb2-backup.hg (glob)
41a0fb2b4bbc rebase: 'hg pull --rebase' now update only if there was nothing to rebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26423
diff changeset
   310
  $ hg tglog
41a0fb2b4bbc rebase: 'hg pull --rebase' now update only if there was nothing to rebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26423
diff changeset
   311
  o  8: 'L2'
41a0fb2b4bbc rebase: 'hg pull --rebase' now update only if there was nothing to rebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26423
diff changeset
   312
  |
41a0fb2b4bbc rebase: 'hg pull --rebase' now update only if there was nothing to rebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26423
diff changeset
   313
  @  7: 'L1'
41a0fb2b4bbc rebase: 'hg pull --rebase' now update only if there was nothing to rebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26423
diff changeset
   314
  |
41a0fb2b4bbc rebase: 'hg pull --rebase' now update only if there was nothing to rebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26423
diff changeset
   315
  o  6: 'R5'
41a0fb2b4bbc rebase: 'hg pull --rebase' now update only if there was nothing to rebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26423
diff changeset
   316
  |
41a0fb2b4bbc rebase: 'hg pull --rebase' now update only if there was nothing to rebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26423
diff changeset
   317
  o  5: 'R4'
41a0fb2b4bbc rebase: 'hg pull --rebase' now update only if there was nothing to rebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26423
diff changeset
   318
  |
41a0fb2b4bbc rebase: 'hg pull --rebase' now update only if there was nothing to rebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26423
diff changeset
   319
  o  4: 'R3'
41a0fb2b4bbc rebase: 'hg pull --rebase' now update only if there was nothing to rebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26423
diff changeset
   320
  |
41a0fb2b4bbc rebase: 'hg pull --rebase' now update only if there was nothing to rebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26423
diff changeset
   321
  o  3: 'R2'
41a0fb2b4bbc rebase: 'hg pull --rebase' now update only if there was nothing to rebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26423
diff changeset
   322
  |
41a0fb2b4bbc rebase: 'hg pull --rebase' now update only if there was nothing to rebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26423
diff changeset
   323
  o  2: 'R1'
41a0fb2b4bbc rebase: 'hg pull --rebase' now update only if there was nothing to rebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26423
diff changeset
   324
  |
41a0fb2b4bbc rebase: 'hg pull --rebase' now update only if there was nothing to rebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26423
diff changeset
   325
  o  1: 'C2'
41a0fb2b4bbc rebase: 'hg pull --rebase' now update only if there was nothing to rebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26423
diff changeset
   326
  |
41a0fb2b4bbc rebase: 'hg pull --rebase' now update only if there was nothing to rebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26423
diff changeset
   327
  o  0: 'C1'
41a0fb2b4bbc rebase: 'hg pull --rebase' now update only if there was nothing to rebase
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26423
diff changeset
   328
  
28118
0e3835c7e1cf rebase: perform update through the 'update' command
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28117
diff changeset
   329
0e3835c7e1cf rebase: perform update through the 'update' command
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28117
diff changeset
   330
pull --rebase update (no rebase) use proper update:
0e3835c7e1cf rebase: perform update through the 'update' command
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28117
diff changeset
   331
0e3835c7e1cf rebase: perform update through the 'update' command
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28117
diff changeset
   332
- warn about other head.
0e3835c7e1cf rebase: perform update through the 'update' command
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28117
diff changeset
   333
0e3835c7e1cf rebase: perform update through the 'update' command
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28117
diff changeset
   334
  $ cd ../a
0e3835c7e1cf rebase: perform update through the 'update' command
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28117
diff changeset
   335
  $ echo R6 > R6
0e3835c7e1cf rebase: perform update through the 'update' command
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28117
diff changeset
   336
  $ hg ci -Am R6
0e3835c7e1cf rebase: perform update through the 'update' command
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28117
diff changeset
   337
  adding R6
0e3835c7e1cf rebase: perform update through the 'update' command
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28117
diff changeset
   338
  $ cd ../c
0e3835c7e1cf rebase: perform update through the 'update' command
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28117
diff changeset
   339
  $ hg up 'desc(R5)'
0e3835c7e1cf rebase: perform update through the 'update' command
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28117
diff changeset
   340
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
0e3835c7e1cf rebase: perform update through the 'update' command
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28117
diff changeset
   341
  $ hg pull --rebase
0e3835c7e1cf rebase: perform update through the 'update' command
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28117
diff changeset
   342
  pulling from $TESTTMP/a (glob)
0e3835c7e1cf rebase: perform update through the 'update' command
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28117
diff changeset
   343
  searching for changes
0e3835c7e1cf rebase: perform update through the 'update' command
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28117
diff changeset
   344
  adding changesets
0e3835c7e1cf rebase: perform update through the 'update' command
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28117
diff changeset
   345
  adding manifests
0e3835c7e1cf rebase: perform update through the 'update' command
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28117
diff changeset
   346
  adding file changes
0e3835c7e1cf rebase: perform update through the 'update' command
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28117
diff changeset
   347
  added 1 changesets with 1 changes to 1 files (+1 heads)
28189
fac3a24be50e rebase: choose default destination the same way as 'hg merge' (BC)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28118
diff changeset
   348
  nothing to rebase - updating instead
28118
0e3835c7e1cf rebase: perform update through the 'update' command
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28117
diff changeset
   349
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
0e3835c7e1cf rebase: perform update through the 'update' command
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28117
diff changeset
   350
  1 other heads for branch "default"
0e3835c7e1cf rebase: perform update through the 'update' command
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28117
diff changeset
   351
  $ hg tglog
0e3835c7e1cf rebase: perform update through the 'update' command
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28117
diff changeset
   352
  @  9: 'R6'
0e3835c7e1cf rebase: perform update through the 'update' command
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28117
diff changeset
   353
  |
0e3835c7e1cf rebase: perform update through the 'update' command
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28117
diff changeset
   354
  | o  8: 'L2'
0e3835c7e1cf rebase: perform update through the 'update' command
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28117
diff changeset
   355
  | |
0e3835c7e1cf rebase: perform update through the 'update' command
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28117
diff changeset
   356
  | o  7: 'L1'
0e3835c7e1cf rebase: perform update through the 'update' command
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28117
diff changeset
   357
  |/
0e3835c7e1cf rebase: perform update through the 'update' command
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28117
diff changeset
   358
  o  6: 'R5'
0e3835c7e1cf rebase: perform update through the 'update' command
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28117
diff changeset
   359
  |
0e3835c7e1cf rebase: perform update through the 'update' command
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28117
diff changeset
   360
  o  5: 'R4'
0e3835c7e1cf rebase: perform update through the 'update' command
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28117
diff changeset
   361
  |
0e3835c7e1cf rebase: perform update through the 'update' command
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28117
diff changeset
   362
  o  4: 'R3'
0e3835c7e1cf rebase: perform update through the 'update' command
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28117
diff changeset
   363
  |
0e3835c7e1cf rebase: perform update through the 'update' command
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28117
diff changeset
   364
  o  3: 'R2'
0e3835c7e1cf rebase: perform update through the 'update' command
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28117
diff changeset
   365
  |
0e3835c7e1cf rebase: perform update through the 'update' command
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28117
diff changeset
   366
  o  2: 'R1'
0e3835c7e1cf rebase: perform update through the 'update' command
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28117
diff changeset
   367
  |
0e3835c7e1cf rebase: perform update through the 'update' command
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28117
diff changeset
   368
  o  1: 'C2'
0e3835c7e1cf rebase: perform update through the 'update' command
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28117
diff changeset
   369
  |
0e3835c7e1cf rebase: perform update through the 'update' command
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28117
diff changeset
   370
  o  0: 'C1'
0e3835c7e1cf rebase: perform update through the 'update' command
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 28117
diff changeset
   371
  
29044
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   372
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   373
Multiple pre-existing heads on the branch
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   374
-----------------------------------------
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   375
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   376
Pull bring content, but nothing on the current branch, we should not consider
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   377
pre-existing heads.
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   378
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   379
  $ cd ../a
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   380
  $ hg branch unrelatedbranch
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   381
  marked working directory as branch unrelatedbranch
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   382
  (branches are permanent and global, did you want a bookmark?)
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   383
  $ echo B1 > B1
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   384
  $ hg commit -Am B1
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   385
  adding B1
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   386
  $ cd ../c
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   387
  $ hg up 'desc(L2)'
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   388
  2 files updated, 0 files merged, 1 files removed, 0 files unresolved
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   389
  $ hg pull --rebase
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   390
  pulling from $TESTTMP/a (glob)
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   391
  searching for changes
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   392
  adding changesets
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   393
  adding manifests
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   394
  adding file changes
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   395
  added 1 changesets with 1 changes to 1 files
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   396
  nothing to rebase
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   397
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   398
There is two local heads and we pull a third one.
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   399
The second local head should not confuse the `hg pull rebase`.
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   400
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   401
  $ hg up 'desc(R6)'
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   402
  1 files updated, 0 files merged, 2 files removed, 0 files unresolved
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   403
  $ echo M1 > M1
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   404
  $ hg commit -Am M1
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   405
  adding M1
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   406
  $ cd ../a
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   407
  $ hg up 'desc(R6)'
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   408
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   409
  $ echo R7 > R7
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   410
  $ hg commit -Am R7
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   411
  adding R7
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   412
  $ cd ../c
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   413
  $ hg up 'desc(L2)'
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   414
  2 files updated, 0 files merged, 2 files removed, 0 files unresolved
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   415
  $ hg pull --rebase
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   416
  pulling from $TESTTMP/a (glob)
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   417
  searching for changes
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   418
  adding changesets
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   419
  adding manifests
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   420
  adding file changes
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   421
  added 1 changesets with 1 changes to 1 files (+1 heads)
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   422
  rebasing 7:864e0a2d2614 "L1"
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   423
  rebasing 8:6dc0ea5dcf55 "L2"
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   424
  saved backup bundle to $TESTTMP/c/.hg/strip-backup/864e0a2d2614-2f72c89c-backup.hg (glob)
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   425
  $ hg tglog
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   426
  @  12: 'L2'
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   427
  |
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   428
  o  11: 'L1'
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   429
  |
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   430
  o  10: 'R7'
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   431
  |
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   432
  | o  9: 'M1'
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   433
  |/
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   434
  | o  8: 'B1' unrelatedbranch
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   435
  |/
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   436
  o  7: 'R6'
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   437
  |
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   438
  o  6: 'R5'
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   439
  |
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   440
  o  5: 'R4'
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   441
  |
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   442
  o  4: 'R3'
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   443
  |
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   444
  o  3: 'R2'
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   445
  |
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   446
  o  2: 'R1'
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   447
  |
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   448
  o  1: 'C2'
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   449
  |
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   450
  o  0: 'C1'
261c25372959 rebase: restrict rebase destination to the pulled set (issue5214)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 28627
diff changeset
   451