tests/test-rebase-mq.t
author Pierre-Yves David <pierre-yves.david@ens-lyon.org>
Mon, 23 Dec 2013 15:29:51 -0800
changeset 20207 cd62532c62a1
parent 20117 aa9385f983fa
child 21266 19d6fec60b81
permissions -rw-r--r--
obsolete: order of magnitude speedup in _computebumpedset Reminder: a changeset is said "bumped" if it tries to obsolete a immutable changeset. The previous algorithm for computing bumped changeset was: 1) Get all public changesets 2) Find all they successors 3) Search for stuff that are eligible for being "bumped" (mutable and non obsolete) The entry size of this algorithm is `O(len(public))` which is mostly the same as `O(len(repo))`. Even this this approach mean fewer obsolescence marker are traveled, this is not very scalable. The new algorithm is: 1) For each potential bumped changesets (non obsolete mutable) 2) iterate over precursors 3) if a precursors is public. changeset is bumped We travel more obsolescence marker, but the entry size is much smaller since the amount of potential bumped should remains mostly stable with time `O(1)`. On some confidential gigantic repo this move bumped computation from 15.19s to 0.46s (×33 speedup…). On "smaller" repo (mercurial, cubicweb's review) no significant gain were seen. The additional traversal of obsolescence marker is probably probably counter balance the advantage of it. Other optimisation could be done in the future (eg: sharing precursors cache for divergence detection)
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
     1
  $ cat >> $HGRCPATH <<EOF
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
     2
  > [extensions]
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
     3
  > rebase=
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
     4
  > mq=
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
     5
  > 
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
     6
  > [mq]
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
     7
  > plain=true
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
     8
  > 
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
     9
  > [alias]
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    10
  > tglog = log -G --template "{rev}: '{desc}' tags: {tags}\n"
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    11
  > EOF
11198
b345b1cc124f rebase: use helpers.sh in tests
Matt Mackall <mpm@selenic.com>
parents: 10672
diff changeset
    12
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    13
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    14
  $ hg init a
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    15
  $ cd a
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    16
  $ hg qinit -c
6906
808f03f61ebe Add rebase extension
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
    17
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    18
  $ echo c1 > f
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    19
  $ hg add f
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    20
  $ hg ci -m C1
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    21
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    22
  $ echo r1 > f
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    23
  $ hg ci -m R1
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    24
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    25
  $ hg up -q 0
10397
8cb81d75730c mq: add parent node IDs to MQ patches on qrefresh/qnew
Steve Losh <steve@stevelosh.com>
parents: 8168
diff changeset
    26
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    27
  $ hg qnew f.patch
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    28
  $ echo mq1 > f
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    29
  $ hg qref -m P0
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    30
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    31
  $ hg qnew f2.patch
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    32
  $ echo mq2 > f
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    33
  $ hg qref -m P1
6931
02f4a0bcfdce test-rebase-mq: '|' is a GNU sed extension, unfold it
Patrick Mezard <pmezard@gmail.com>
parents: 6906
diff changeset
    34
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    35
  $ hg tglog
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    36
  @  3: 'P1' tags: f2.patch qtip tip
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    37
  |
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    38
  o  2: 'P0' tags: f.patch qbase
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    39
  |
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    40
  | o  1: 'R1' tags:
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    41
  |/
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    42
  o  0: 'C1' tags: qparent
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    43
  
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    44
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    45
Rebase - try to rebase on an applied mq patch:
6906
808f03f61ebe Add rebase extension
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
    46
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    47
  $ hg rebase -s 1 -d 3
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    48
  abort: cannot rebase onto an applied mq patch
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    49
  [255]
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    50
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    51
Rebase - same thing, but mq patch is default dest:
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    52
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    53
  $ hg up -q 1
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    54
  $ hg rebase
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    55
  abort: cannot rebase onto an applied mq patch
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    56
  [255]
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    57
  $ hg up -q qtip
6906
808f03f61ebe Add rebase extension
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
    58
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    59
Rebase - generate a conflict:
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    60
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    61
  $ hg rebase -s 2 -d 1
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    62
  merging f
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    63
  warning: conflicts during merge.
15501
2371f4aea665 merge: give a special message for internal:merge failure (issue3105)
Matt Mackall <mpm@selenic.com>
parents: 14599
diff changeset
    64
  merging f incomplete! (edit conflicts, then use 'hg resolve --mark')
18933
42b620fc89e2 rebase: switch from util.Abort to util.InterventionRequired where appropriate (bc)
Augie Fackler <raf@durin42.com>
parents: 18648
diff changeset
    65
  unresolved conflicts (see hg resolve, then hg rebase --continue)
18935
e5d9441ec281 dispatch: exit with status 1 for an InterventionRequired exception (bc)
Augie Fackler <raf@durin42.com>
parents: 18933
diff changeset
    66
  [1]
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    67
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    68
Fix the 1st conflict:
6906
808f03f61ebe Add rebase extension
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
    69
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    70
  $ echo mq1r1 > f
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    71
  $ hg resolve -m f
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    72
  $ hg rebase -c
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    73
  merging f
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    74
  warning: conflicts during merge.
15501
2371f4aea665 merge: give a special message for internal:merge failure (issue3105)
Matt Mackall <mpm@selenic.com>
parents: 14599
diff changeset
    75
  merging f incomplete! (edit conflicts, then use 'hg resolve --mark')
18933
42b620fc89e2 rebase: switch from util.Abort to util.InterventionRequired where appropriate (bc)
Augie Fackler <raf@durin42.com>
parents: 18648
diff changeset
    76
  unresolved conflicts (see hg resolve, then hg rebase --continue)
18935
e5d9441ec281 dispatch: exit with status 1 for an InterventionRequired exception (bc)
Augie Fackler <raf@durin42.com>
parents: 18933
diff changeset
    77
  [1]
6906
808f03f61ebe Add rebase extension
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
    78
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    79
Fix the 2nd conflict:
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    80
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    81
  $ echo mq1r1mq2 > f
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    82
  $ hg resolve -m f
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    83
  $ hg rebase -c
12640
6cc4b14fb76b tests: remove redundant globs
Mads Kiilerich <mads@kiilerich.com>
parents: 12608
diff changeset
    84
  saved backup bundle to $TESTTMP/a/.hg/strip-backup/*-backup.hg (glob)
6906
808f03f61ebe Add rebase extension
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
    85
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    86
  $ hg tglog
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    87
  @  3: 'P1' tags: f2.patch qtip tip
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    88
  |
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    89
  o  2: 'P0' tags: f.patch qbase
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    90
  |
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    91
  o  1: 'R1' tags: qparent
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    92
  |
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    93
  o  0: 'C1' tags:
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    94
  
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    95
  $ hg up -q qbase
6906
808f03f61ebe Add rebase extension
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
    96
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    97
  $ cat f
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
    98
  mq1r1
10672
c2e1e637d4da rebase: always check if rebasing onto an applied mq patch.
Greg Ward <greg-hg@gerg.ca>
parents: 10397
diff changeset
    99
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   100
  $ cat .hg/patches/f.patch
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   101
  # HG changeset patch
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   102
  # User test
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   103
  # Date ?????????? ? (glob)
18648
76b69cccb07a export: show 'Date' header in a format that also is readable for humans
Mads Kiilerich <mads@kiilerich.com>
parents: 16912
diff changeset
   104
  #      * (glob)
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   105
  # Node ID ???????????????????????????????????????? (glob)
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   106
  # Parent  bac9ed9960d8992bcad75864a879fa76cadaf1b0
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   107
  P0
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   108
  
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   109
  diff -r bac9ed9960d8 -r ???????????? f (glob)
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   110
  --- a/f	Thu Jan 01 00:00:00 1970 +0000
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   111
  +++ b/f	??? ??? ?? ??:??:?? ???? ????? (glob)
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   112
  @@ -1,1 +1,1 @@
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   113
  -r1
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   114
  +mq1r1
6906
808f03f61ebe Add rebase extension
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
   115
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   116
Update to qtip:
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   117
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   118
  $ hg up -q qtip
6906
808f03f61ebe Add rebase extension
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
   119
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   120
  $ cat f
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   121
  mq1r1mq2
6906
808f03f61ebe Add rebase extension
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
   122
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   123
  $ cat .hg/patches/f2.patch
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   124
  # HG changeset patch
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   125
  # User test
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   126
  # Date ?????????? ? (glob)
18648
76b69cccb07a export: show 'Date' header in a format that also is readable for humans
Mads Kiilerich <mads@kiilerich.com>
parents: 16912
diff changeset
   127
  #      * (glob)
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   128
  # Node ID ???????????????????????????????????????? (glob)
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   129
  # Parent  ???????????????????????????????????????? (glob)
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   130
  P1
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   131
  
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   132
  diff -r ???????????? -r ???????????? f (glob)
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   133
  --- a/f	??? ??? ?? ??:??:?? ???? ????? (glob)
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   134
  +++ b/f	??? ??? ?? ??:??:?? ???? ????? (glob)
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   135
  @@ -1,1 +1,1 @@
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   136
  -mq1r1
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   137
  +mq1r1mq2
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   138
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   139
Adding one git-style patch and one normal:
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   140
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   141
  $ hg qpop -a
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   142
  popping f2.patch
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   143
  popping f.patch
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   144
  patch queue now empty
6906
808f03f61ebe Add rebase extension
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
   145
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   146
  $ rm -fr .hg/patches
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   147
  $ hg qinit -c
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   148
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   149
  $ hg up -q 0
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   150
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   151
  $ hg qnew --git f_git.patch
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   152
  $ echo mq1 > p
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   153
  $ hg add p
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   154
  $ hg qref --git -m 'P0 (git)'
6906
808f03f61ebe Add rebase extension
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
   155
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   156
  $ hg qnew f.patch
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   157
  $ echo mq2 > p
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   158
  $ hg qref -m P1
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   159
  $ hg qci -m 'save patch state'
6931
02f4a0bcfdce test-rebase-mq: '|' is a GNU sed extension, unfold it
Patrick Mezard <pmezard@gmail.com>
parents: 6906
diff changeset
   160
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   161
  $ hg qseries -s
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   162
  f_git.patch: P0 (git)
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   163
  f.patch: P1
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   164
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   165
  $ hg -R .hg/patches manifest
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   166
  .hgignore
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   167
  f.patch
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   168
  f_git.patch
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   169
  series
7955
c3d4ff03ec72 rebase: keep original mq patch format (Issue1574)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 6931
diff changeset
   170
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   171
  $ cat .hg/patches/f_git.patch
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   172
  P0 (git)
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   173
  
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   174
  diff --git a/p b/p
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   175
  new file mode 100644
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   176
  --- /dev/null
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   177
  +++ b/p
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   178
  @@ -0,0 +1,1 @@
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   179
  +mq1
7955
c3d4ff03ec72 rebase: keep original mq patch format (Issue1574)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 6931
diff changeset
   180
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   181
  $ cat .hg/patches/f.patch
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   182
  P1
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   183
  
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   184
  diff -r ???????????? p (glob)
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   185
  --- a/p	??? ??? ?? ??:??:?? ???? ????? (glob)
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   186
  +++ b/p	??? ??? ?? ??:??:?? ???? ????? (glob)
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   187
  @@ -1,1 +1,1 @@
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   188
  -mq1
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   189
  +mq2
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   190
7955
c3d4ff03ec72 rebase: keep original mq patch format (Issue1574)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 6931
diff changeset
   191
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   192
Rebase the applied mq patches:
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   193
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   194
  $ hg rebase -s 2 -d 1
12640
6cc4b14fb76b tests: remove redundant globs
Mads Kiilerich <mads@kiilerich.com>
parents: 12608
diff changeset
   195
  saved backup bundle to $TESTTMP/a/.hg/strip-backup/*-backup.hg (glob)
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   196
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   197
  $ hg qci -m 'save patch state'
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   198
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   199
  $ hg qseries -s
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   200
  f_git.patch: P0 (git)
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   201
  f.patch: P1
7955
c3d4ff03ec72 rebase: keep original mq patch format (Issue1574)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 6931
diff changeset
   202
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   203
  $ hg -R .hg/patches manifest
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   204
  .hgignore
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   205
  f.patch
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   206
  f_git.patch
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   207
  series
7955
c3d4ff03ec72 rebase: keep original mq patch format (Issue1574)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 6931
diff changeset
   208
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   209
  $ cat .hg/patches/f_git.patch
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   210
  # HG changeset patch
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   211
  # User test
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   212
  # Date ?????????? ? (glob)
18648
76b69cccb07a export: show 'Date' header in a format that also is readable for humans
Mads Kiilerich <mads@kiilerich.com>
parents: 16912
diff changeset
   213
  #      * (glob)
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   214
  # Node ID ???????????????????????????????????????? (glob)
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   215
  # Parent  bac9ed9960d8992bcad75864a879fa76cadaf1b0
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   216
  P0 (git)
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   217
  
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   218
  diff --git a/p b/p
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   219
  new file mode 100644
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   220
  --- /dev/null
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   221
  +++ b/p
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   222
  @@ -0,0 +1,1 @@
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   223
  +mq1
7955
c3d4ff03ec72 rebase: keep original mq patch format (Issue1574)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 6931
diff changeset
   224
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   225
  $ cat .hg/patches/f.patch
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   226
  # HG changeset patch
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   227
  # User test
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   228
  # Date ?????????? ? (glob)
18648
76b69cccb07a export: show 'Date' header in a format that also is readable for humans
Mads Kiilerich <mads@kiilerich.com>
parents: 16912
diff changeset
   229
  #      * (glob)
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   230
  # Node ID ???????????????????????????????????????? (glob)
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   231
  # Parent  ???????????????????????????????????????? (glob)
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   232
  P1
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   233
  
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   234
  diff -r ???????????? -r ???????????? p (glob)
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   235
  --- a/p	??? ??? ?? ??:??:?? ???? ????? (glob)
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   236
  +++ b/p	??? ??? ?? ??:??:?? ???? ????? (glob)
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   237
  @@ -1,1 +1,1 @@
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   238
  -mq1
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
   239
  +mq2
7955
c3d4ff03ec72 rebase: keep original mq patch format (Issue1574)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 6931
diff changeset
   240
16912
6ef3107c661e tests: cleanup of tests that got lost in their own nested directories
Mads Kiilerich <mads@kiilerich.com>
parents: 16531
diff changeset
   241
  $ cd ..
13766
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
   242
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
   243
Rebase with guards
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
   244
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
   245
  $ hg init foo
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
   246
  $ cd foo
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
   247
  $ echo a > a
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
   248
  $ hg ci -Am a
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
   249
  adding a
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
   250
15904
7d28d6a67dd3 rebase: write series file without removed mq patches
Mads Kiilerich <mads@kiilerich.com>
parents: 15501
diff changeset
   251
Create mq repo with guarded patches foo and bar and empty patch:
13766
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
   252
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
   253
  $ hg qinit
16531
b9f51f49bf2a rebase: preserve mq series order, guarded patches (issue2849)
Patrick Mezard <patrick@mezard.eu>
parents: 15904
diff changeset
   254
  $ echo guarded > guarded
b9f51f49bf2a rebase: preserve mq series order, guarded patches (issue2849)
Patrick Mezard <patrick@mezard.eu>
parents: 15904
diff changeset
   255
  $ hg add guarded
b9f51f49bf2a rebase: preserve mq series order, guarded patches (issue2849)
Patrick Mezard <patrick@mezard.eu>
parents: 15904
diff changeset
   256
  $ hg qnew guarded
b9f51f49bf2a rebase: preserve mq series order, guarded patches (issue2849)
Patrick Mezard <patrick@mezard.eu>
parents: 15904
diff changeset
   257
  $ hg qnew empty-important -m 'important commit message'
b9f51f49bf2a rebase: preserve mq series order, guarded patches (issue2849)
Patrick Mezard <patrick@mezard.eu>
parents: 15904
diff changeset
   258
  $ echo bar > bar
b9f51f49bf2a rebase: preserve mq series order, guarded patches (issue2849)
Patrick Mezard <patrick@mezard.eu>
parents: 15904
diff changeset
   259
  $ hg add bar
b9f51f49bf2a rebase: preserve mq series order, guarded patches (issue2849)
Patrick Mezard <patrick@mezard.eu>
parents: 15904
diff changeset
   260
  $ hg qnew bar
13766
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
   261
  $ echo foo > foo
14599
b28004513977 rebase: preserve mq series order after rebasing (issue2849)
Idan Kamara <idankk86@gmail.com>
parents: 13766
diff changeset
   262
  $ hg add foo
16531
b9f51f49bf2a rebase: preserve mq series order, guarded patches (issue2849)
Patrick Mezard <patrick@mezard.eu>
parents: 15904
diff changeset
   263
  $ hg qnew foo
b9f51f49bf2a rebase: preserve mq series order, guarded patches (issue2849)
Patrick Mezard <patrick@mezard.eu>
parents: 15904
diff changeset
   264
  $ hg qpop -a
13766
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
   265
  popping foo
16531
b9f51f49bf2a rebase: preserve mq series order, guarded patches (issue2849)
Patrick Mezard <patrick@mezard.eu>
parents: 15904
diff changeset
   266
  popping bar
b9f51f49bf2a rebase: preserve mq series order, guarded patches (issue2849)
Patrick Mezard <patrick@mezard.eu>
parents: 15904
diff changeset
   267
  popping empty-important
b9f51f49bf2a rebase: preserve mq series order, guarded patches (issue2849)
Patrick Mezard <patrick@mezard.eu>
parents: 15904
diff changeset
   268
  popping guarded
13766
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
   269
  patch queue now empty
16531
b9f51f49bf2a rebase: preserve mq series order, guarded patches (issue2849)
Patrick Mezard <patrick@mezard.eu>
parents: 15904
diff changeset
   270
  $ hg qguard guarded +guarded
13766
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
   271
  $ hg qguard bar +baz
16531
b9f51f49bf2a rebase: preserve mq series order, guarded patches (issue2849)
Patrick Mezard <patrick@mezard.eu>
parents: 15904
diff changeset
   272
  $ hg qguard foo +baz
b9f51f49bf2a rebase: preserve mq series order, guarded patches (issue2849)
Patrick Mezard <patrick@mezard.eu>
parents: 15904
diff changeset
   273
  $ hg qselect baz
b9f51f49bf2a rebase: preserve mq series order, guarded patches (issue2849)
Patrick Mezard <patrick@mezard.eu>
parents: 15904
diff changeset
   274
  number of unguarded, unapplied patches has changed from 1 to 3
b9f51f49bf2a rebase: preserve mq series order, guarded patches (issue2849)
Patrick Mezard <patrick@mezard.eu>
parents: 15904
diff changeset
   275
  $ hg qpush bar
b9f51f49bf2a rebase: preserve mq series order, guarded patches (issue2849)
Patrick Mezard <patrick@mezard.eu>
parents: 15904
diff changeset
   276
  applying empty-important
b9f51f49bf2a rebase: preserve mq series order, guarded patches (issue2849)
Patrick Mezard <patrick@mezard.eu>
parents: 15904
diff changeset
   277
  patch empty-important is empty
b9f51f49bf2a rebase: preserve mq series order, guarded patches (issue2849)
Patrick Mezard <patrick@mezard.eu>
parents: 15904
diff changeset
   278
  applying bar
b9f51f49bf2a rebase: preserve mq series order, guarded patches (issue2849)
Patrick Mezard <patrick@mezard.eu>
parents: 15904
diff changeset
   279
  now at: bar
13766
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
   280
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
   281
  $ hg qguard -l
16531
b9f51f49bf2a rebase: preserve mq series order, guarded patches (issue2849)
Patrick Mezard <patrick@mezard.eu>
parents: 15904
diff changeset
   282
  guarded: +guarded
15904
7d28d6a67dd3 rebase: write series file without removed mq patches
Mads Kiilerich <mads@kiilerich.com>
parents: 15501
diff changeset
   283
  empty-important: unguarded
13766
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
   284
  bar: +baz
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
   285
  foo: +baz
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
   286
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
   287
  $ hg tglog
16531
b9f51f49bf2a rebase: preserve mq series order, guarded patches (issue2849)
Patrick Mezard <patrick@mezard.eu>
parents: 15904
diff changeset
   288
  @  2: 'imported patch bar' tags: bar qtip tip
13766
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
   289
  |
15904
7d28d6a67dd3 rebase: write series file without removed mq patches
Mads Kiilerich <mads@kiilerich.com>
parents: 15501
diff changeset
   290
  o  1: 'important commit message' tags: empty-important qbase
7d28d6a67dd3 rebase: write series file without removed mq patches
Mads Kiilerich <mads@kiilerich.com>
parents: 15501
diff changeset
   291
  |
7d28d6a67dd3 rebase: write series file without removed mq patches
Mads Kiilerich <mads@kiilerich.com>
parents: 15501
diff changeset
   292
  o  0: 'a' tags: qparent
13766
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
   293
  
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
   294
Create new head to rebase bar onto:
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
   295
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
   296
  $ hg up -C 0
14599
b28004513977 rebase: preserve mq series order after rebasing (issue2849)
Idan Kamara <idankk86@gmail.com>
parents: 13766
diff changeset
   297
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
13766
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
   298
  $ echo b > b
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
   299
  $ hg add b
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
   300
  $ hg ci -m b
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
   301
  created new head
15904
7d28d6a67dd3 rebase: write series file without removed mq patches
Mads Kiilerich <mads@kiilerich.com>
parents: 15501
diff changeset
   302
  $ hg up -C 2
14599
b28004513977 rebase: preserve mq series order after rebasing (issue2849)
Idan Kamara <idankk86@gmail.com>
parents: 13766
diff changeset
   303
  1 files updated, 0 files merged, 1 files removed, 0 files unresolved
13766
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
   304
  $ echo a >> a
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
   305
  $ hg qref
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
   306
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
   307
  $ hg tglog
15904
7d28d6a67dd3 rebase: write series file without removed mq patches
Mads Kiilerich <mads@kiilerich.com>
parents: 15501
diff changeset
   308
  @  3: '[mq]: bar' tags: bar qtip tip
13766
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
   309
  |
15904
7d28d6a67dd3 rebase: write series file without removed mq patches
Mads Kiilerich <mads@kiilerich.com>
parents: 15501
diff changeset
   310
  | o  2: 'b' tags:
7d28d6a67dd3 rebase: write series file without removed mq patches
Mads Kiilerich <mads@kiilerich.com>
parents: 15501
diff changeset
   311
  | |
7d28d6a67dd3 rebase: write series file without removed mq patches
Mads Kiilerich <mads@kiilerich.com>
parents: 15501
diff changeset
   312
  o |  1: 'important commit message' tags: empty-important qbase
13766
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
   313
  |/
15904
7d28d6a67dd3 rebase: write series file without removed mq patches
Mads Kiilerich <mads@kiilerich.com>
parents: 15501
diff changeset
   314
  o  0: 'a' tags: qparent
13766
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
   315
  
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
   316
15904
7d28d6a67dd3 rebase: write series file without removed mq patches
Mads Kiilerich <mads@kiilerich.com>
parents: 15501
diff changeset
   317
Rebase bar (make sure series order is preserved and empty-important also is
7d28d6a67dd3 rebase: write series file without removed mq patches
Mads Kiilerich <mads@kiilerich.com>
parents: 15501
diff changeset
   318
removed from the series):
13766
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
   319
14599
b28004513977 rebase: preserve mq series order after rebasing (issue2849)
Idan Kamara <idankk86@gmail.com>
parents: 13766
diff changeset
   320
  $ hg qseries
16531
b9f51f49bf2a rebase: preserve mq series order, guarded patches (issue2849)
Patrick Mezard <patrick@mezard.eu>
parents: 15904
diff changeset
   321
  guarded
15904
7d28d6a67dd3 rebase: write series file without removed mq patches
Mads Kiilerich <mads@kiilerich.com>
parents: 15501
diff changeset
   322
  empty-important
7d28d6a67dd3 rebase: write series file without removed mq patches
Mads Kiilerich <mads@kiilerich.com>
parents: 15501
diff changeset
   323
  bar
7d28d6a67dd3 rebase: write series file without removed mq patches
Mads Kiilerich <mads@kiilerich.com>
parents: 15501
diff changeset
   324
  foo
7d28d6a67dd3 rebase: write series file without removed mq patches
Mads Kiilerich <mads@kiilerich.com>
parents: 15501
diff changeset
   325
  $ [ -f .hg/patches/empty-important ]
7d28d6a67dd3 rebase: write series file without removed mq patches
Mads Kiilerich <mads@kiilerich.com>
parents: 15501
diff changeset
   326
  $ hg -q rebase -d 2
7d28d6a67dd3 rebase: write series file without removed mq patches
Mads Kiilerich <mads@kiilerich.com>
parents: 15501
diff changeset
   327
  $ hg qseries
16531
b9f51f49bf2a rebase: preserve mq series order, guarded patches (issue2849)
Patrick Mezard <patrick@mezard.eu>
parents: 15904
diff changeset
   328
  guarded
14599
b28004513977 rebase: preserve mq series order after rebasing (issue2849)
Idan Kamara <idankk86@gmail.com>
parents: 13766
diff changeset
   329
  bar
b28004513977 rebase: preserve mq series order after rebasing (issue2849)
Idan Kamara <idankk86@gmail.com>
parents: 13766
diff changeset
   330
  foo
15904
7d28d6a67dd3 rebase: write series file without removed mq patches
Mads Kiilerich <mads@kiilerich.com>
parents: 15501
diff changeset
   331
  $ [ -f .hg/patches/empty-important ]
7d28d6a67dd3 rebase: write series file without removed mq patches
Mads Kiilerich <mads@kiilerich.com>
parents: 15501
diff changeset
   332
  [1]
13766
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
   333
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
   334
  $ hg qguard -l
16531
b9f51f49bf2a rebase: preserve mq series order, guarded patches (issue2849)
Patrick Mezard <patrick@mezard.eu>
parents: 15904
diff changeset
   335
  guarded: +guarded
14599
b28004513977 rebase: preserve mq series order after rebasing (issue2849)
Idan Kamara <idankk86@gmail.com>
parents: 13766
diff changeset
   336
  bar: +baz
13766
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
   337
  foo: +baz
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
   338
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
   339
  $ hg tglog
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
   340
  @  2:* '[mq]: bar' tags: bar qbase qtip tip (glob)
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
   341
  |
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
   342
  o  1:* 'b' tags: qparent (glob)
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
   343
  |
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
   344
  o  0:* 'a' tags: (glob)
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
   345
  
16912
6ef3107c661e tests: cleanup of tests that got lost in their own nested directories
Mads Kiilerich <mads@kiilerich.com>
parents: 16531
diff changeset
   346
  $ cd ..