tests/test-prune.t
author Arne Babenhauserheide <arne.babenhauserheide@kit.edu>
Mon, 20 Jan 2014 10:57:10 +0100
changeset 776 7eaad1101242
parent 740 eeaacbb688df
child 789 0d2bb0282e78
permissions -rw-r--r--
raise util.Abort instead of assertion when trying to evolve a merge changeset. This prevent exposing a nasty traceback to the user.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
685
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
     1
  $ cat >> $HGRCPATH <<EOF
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
     2
  > [ui]
693
d3c1fe0035d1 prune: handle bookmark
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 692
diff changeset
     3
  > logtemplate={rev}:{node|short}[{bookmarks}] ({obsolete}/{phase}) {desc|firstline}\n
685
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
     4
  > [extensions]
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
     5
  > hgext.rebase=
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
     6
  > EOF
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
     7
  $ echo "evolve=$(echo $(dirname $TESTDIR))/hgext/evolve.py" >> $HGRCPATH
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
     8
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
     9
  $ mkcommit() {
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    10
  >    echo "$1" > "$1"
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    11
  >    hg add "$1"
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    12
  >    hg ci -m "add $1"
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    13
  > }
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    14
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    15
  $ hg init repo
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    16
  $ cd repo
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    17
  $ mkcommit a
686
d15f8a00e4ce prune: turn one of the test changeset public
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 685
diff changeset
    18
  $ hg phase --public .
685
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    19
  $ mkcommit b
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    20
  $ mkcommit c
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    21
  $ mkcommit d
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    22
  $ mkcommit e
693
d3c1fe0035d1 prune: handle bookmark
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 692
diff changeset
    23
  $ hg bookmarks BABAR
685
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    24
  $ hg log -G
693
d3c1fe0035d1 prune: handle bookmark
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 692
diff changeset
    25
  @  4:9d206ffc875e[BABAR] (stable/draft) add e
685
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    26
  |
692
a2938a539f44 test-prune: simplified log output
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 688
diff changeset
    27
  o  3:47d2a3944de8[] (stable/draft) add d
685
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    28
  |
692
a2938a539f44 test-prune: simplified log output
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 688
diff changeset
    29
  o  2:4538525df7e2[] (stable/draft) add c
685
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    30
  |
692
a2938a539f44 test-prune: simplified log output
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 688
diff changeset
    31
  o  1:7c3bad9141dc[] (stable/draft) add b
685
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    32
  |
692
a2938a539f44 test-prune: simplified log output
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 688
diff changeset
    33
  o  0:1f0dee641bb7[] (stable/public) add a
685
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    34
  
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    35
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    36
Check simple case
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    37
----------------------------
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    38
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    39
prune current and tip changeset
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    40
716
4c0f6d555032 prune: add --user and --date options
Levi Bard <levi@unity3d.com>
parents: 715
diff changeset
    41
  $ hg prune --user blah --date '1979-12-15' .
688
f2c3fd21fa63 prune: add an informative message about the number of pruned changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 687
diff changeset
    42
  1 changesets pruned
685
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    43
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    44
  working directory now at 47d2a3944de8
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    45
  $ hg debugobsolete
716
4c0f6d555032 prune: add --user and --date options
Levi Bard <levi@unity3d.com>
parents: 715
diff changeset
    46
  9d206ffc875e1bc304590549be293be36821e66c 0 {'date': '314064000 0', 'user': 'blah'} (glob)
685
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    47
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    48
prune leaving unstability behind
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    49
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    50
  $ hg prune 1
688
f2c3fd21fa63 prune: add an informative message about the number of pruned changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 687
diff changeset
    51
  1 changesets pruned
685
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    52
  2 new unstable changesets
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    53
  $ hg debugobsolete
716
4c0f6d555032 prune: add --user and --date options
Levi Bard <levi@unity3d.com>
parents: 715
diff changeset
    54
  9d206ffc875e1bc304590549be293be36821e66c 0 {'date': '314064000 0', 'user': 'blah'} (glob)
685
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    55
  7c3bad9141dcb46ff89abf5f61856facd56e476c 0 {'date': '*', 'user': 'test'} (glob)
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    56
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    57
pruning multiple changeset at once
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    58
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    59
  $ hg prune 2:
688
f2c3fd21fa63 prune: add an informative message about the number of pruned changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 687
diff changeset
    60
  2 changesets pruned
685
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    61
  0 files updated, 0 files merged, 3 files removed, 0 files unresolved
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    62
  working directory now at 1f0dee641bb7
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    63
  $ hg debugobsolete
716
4c0f6d555032 prune: add --user and --date options
Levi Bard <levi@unity3d.com>
parents: 715
diff changeset
    64
  9d206ffc875e1bc304590549be293be36821e66c 0 {'date': '314064000 0', 'user': 'blah'} (glob)
685
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    65
  7c3bad9141dcb46ff89abf5f61856facd56e476c 0 {'date': '*', 'user': 'test'} (glob)
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    66
  4538525df7e2b9f09423636c61ef63a4cb872a2d 0 {'date': '*', 'user': 'test'} (glob)
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    67
  47d2a3944de8b013de3be9578e8e344ea2e6c097 0 {'date': '*', 'user': 'test'} (glob)
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    68
687
6c1fbef2952e prune: test and improve message of immutable aborting.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 686
diff changeset
    69
cannot prune public changesets
6c1fbef2952e prune: test and improve message of immutable aborting.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 686
diff changeset
    70
6c1fbef2952e prune: test and improve message of immutable aborting.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 686
diff changeset
    71
  $ hg prune 0
6c1fbef2952e prune: test and improve message of immutable aborting.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 686
diff changeset
    72
  abort: cannot prune immutable changeset: 1f0dee641bb7
6c1fbef2952e prune: test and improve message of immutable aborting.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 686
diff changeset
    73
  (see "hg help phases" for details)
6c1fbef2952e prune: test and improve message of immutable aborting.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 686
diff changeset
    74
  [255]
6c1fbef2952e prune: test and improve message of immutable aborting.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 686
diff changeset
    75
  $ hg debugobsolete
716
4c0f6d555032 prune: add --user and --date options
Levi Bard <levi@unity3d.com>
parents: 715
diff changeset
    76
  9d206ffc875e1bc304590549be293be36821e66c 0 {'date': '314064000 0', 'user': 'blah'} (glob)
687
6c1fbef2952e prune: test and improve message of immutable aborting.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 686
diff changeset
    77
  7c3bad9141dcb46ff89abf5f61856facd56e476c 0 {'date': '*', 'user': 'test'} (glob)
6c1fbef2952e prune: test and improve message of immutable aborting.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 686
diff changeset
    78
  4538525df7e2b9f09423636c61ef63a4cb872a2d 0 {'date': '*', 'user': 'test'} (glob)
6c1fbef2952e prune: test and improve message of immutable aborting.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 686
diff changeset
    79
  47d2a3944de8b013de3be9578e8e344ea2e6c097 0 {'date': '*', 'user': 'test'} (glob)
6c1fbef2952e prune: test and improve message of immutable aborting.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 686
diff changeset
    80
685
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    81
Check successors addition
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    82
----------------------------
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    83
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    84
  $ mkcommit bb
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    85
  $ mkcommit cc
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    86
  $ mkcommit dd
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    87
  $ mkcommit ee
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    88
  $ hg up 0
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    89
  0 files updated, 0 files merged, 4 files removed, 0 files unresolved
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    90
  $ mkcommit nB
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    91
  created new head
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    92
  $ mkcommit nC
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    93
  $ mkcommit nD
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    94
  $ mkcommit nE
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    95
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    96
  $ hg log -G
692
a2938a539f44 test-prune: simplified log output
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 688
diff changeset
    97
  @  12:6e8148413dd5[] (stable/draft) add nE
685
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
    98
  |
692
a2938a539f44 test-prune: simplified log output
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 688
diff changeset
    99
  o  11:8ee176ff1d4b[] (stable/draft) add nD
685
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   100
  |
692
a2938a539f44 test-prune: simplified log output
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 688
diff changeset
   101
  o  10:aa96dc3f04c2[] (stable/draft) add nC
685
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   102
  |
692
a2938a539f44 test-prune: simplified log output
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 688
diff changeset
   103
  o  9:6f6f25e4f748[] (stable/draft) add nB
685
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   104
  |
692
a2938a539f44 test-prune: simplified log output
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 688
diff changeset
   105
  | o  8:bb5e90a7ea1f[] (stable/draft) add ee
685
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   106
  | |
692
a2938a539f44 test-prune: simplified log output
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 688
diff changeset
   107
  | o  7:00ded550b1e2[] (stable/draft) add dd
685
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   108
  | |
692
a2938a539f44 test-prune: simplified log output
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 688
diff changeset
   109
  | o  6:354011cd103f[] (stable/draft) add cc
685
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   110
  | |
692
a2938a539f44 test-prune: simplified log output
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 688
diff changeset
   111
  | o  5:814c38b95e72[] (stable/draft) add bb
685
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   112
  |/
693
d3c1fe0035d1 prune: handle bookmark
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 692
diff changeset
   113
  o  0:1f0dee641bb7[BABAR] (stable/public) add a
685
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   114
  
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   115
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   116
one old, one new
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   117
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   118
  $ hg prune 'desc("add ee")' -s 'desc("add nE")'
688
f2c3fd21fa63 prune: add an informative message about the number of pruned changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 687
diff changeset
   119
  1 changesets pruned
685
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   120
  $ hg debugobsolete
716
4c0f6d555032 prune: add --user and --date options
Levi Bard <levi@unity3d.com>
parents: 715
diff changeset
   121
  9d206ffc875e1bc304590549be293be36821e66c 0 {'date': '314064000 0', 'user': 'blah'} (glob)
685
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   122
  7c3bad9141dcb46ff89abf5f61856facd56e476c 0 {'date': '*', 'user': 'test'} (glob)
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   123
  4538525df7e2b9f09423636c61ef63a4cb872a2d 0 {'date': '*', 'user': 'test'} (glob)
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   124
  47d2a3944de8b013de3be9578e8e344ea2e6c097 0 {'date': '*', 'user': 'test'} (glob)
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   125
  bb5e90a7ea1f3b4b38b23150a4a597b6146d70ef 6e8148413dd541855b72a920a90c06fca127c7e7 0 {'date': '*', 'user': 'test'} (glob)
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   126
  $ hg log -G
692
a2938a539f44 test-prune: simplified log output
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 688
diff changeset
   127
  @  12:6e8148413dd5[] (stable/draft) add nE
685
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   128
  |
692
a2938a539f44 test-prune: simplified log output
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 688
diff changeset
   129
  o  11:8ee176ff1d4b[] (stable/draft) add nD
685
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   130
  |
692
a2938a539f44 test-prune: simplified log output
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 688
diff changeset
   131
  o  10:aa96dc3f04c2[] (stable/draft) add nC
685
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   132
  |
692
a2938a539f44 test-prune: simplified log output
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 688
diff changeset
   133
  o  9:6f6f25e4f748[] (stable/draft) add nB
685
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   134
  |
692
a2938a539f44 test-prune: simplified log output
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 688
diff changeset
   135
  | o  7:00ded550b1e2[] (stable/draft) add dd
685
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   136
  | |
692
a2938a539f44 test-prune: simplified log output
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 688
diff changeset
   137
  | o  6:354011cd103f[] (stable/draft) add cc
685
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   138
  | |
692
a2938a539f44 test-prune: simplified log output
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 688
diff changeset
   139
  | o  5:814c38b95e72[] (stable/draft) add bb
685
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   140
  |/
693
d3c1fe0035d1 prune: handle bookmark
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 692
diff changeset
   141
  o  0:1f0dee641bb7[BABAR] (stable/public) add a
685
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   142
  
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   143
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   144
one old, two new
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   145
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   146
  $ hg prune 'desc("add dd")' -s 'desc("add nD")' -s 'desc("add nC")'
688
f2c3fd21fa63 prune: add an informative message about the number of pruned changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 687
diff changeset
   147
  1 changesets pruned
685
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   148
  $ hg debugobsolete
716
4c0f6d555032 prune: add --user and --date options
Levi Bard <levi@unity3d.com>
parents: 715
diff changeset
   149
  9d206ffc875e1bc304590549be293be36821e66c 0 {'date': '314064000 0', 'user': 'blah'} (glob)
685
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   150
  7c3bad9141dcb46ff89abf5f61856facd56e476c 0 {'date': '*', 'user': 'test'} (glob)
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   151
  4538525df7e2b9f09423636c61ef63a4cb872a2d 0 {'date': '*', 'user': 'test'} (glob)
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   152
  47d2a3944de8b013de3be9578e8e344ea2e6c097 0 {'date': '*', 'user': 'test'} (glob)
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   153
  bb5e90a7ea1f3b4b38b23150a4a597b6146d70ef 6e8148413dd541855b72a920a90c06fca127c7e7 0 {'date': '*', 'user': 'test'} (glob)
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   154
  00ded550b1e28bba454bd34cec1269d22cf3ef25 aa96dc3f04c2c2341fe6880aeb6dc9fbffff9ef9 8ee176ff1d4b2034ce51e3efc579c2de346b631d 0 {'date': '**', 'user': 'test'} (glob)
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   155
  $ hg log -G
692
a2938a539f44 test-prune: simplified log output
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 688
diff changeset
   156
  @  12:6e8148413dd5[] (stable/draft) add nE
685
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   157
  |
692
a2938a539f44 test-prune: simplified log output
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 688
diff changeset
   158
  o  11:8ee176ff1d4b[] (stable/draft) add nD
685
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   159
  |
692
a2938a539f44 test-prune: simplified log output
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 688
diff changeset
   160
  o  10:aa96dc3f04c2[] (stable/draft) add nC
685
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   161
  |
692
a2938a539f44 test-prune: simplified log output
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 688
diff changeset
   162
  o  9:6f6f25e4f748[] (stable/draft) add nB
685
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   163
  |
692
a2938a539f44 test-prune: simplified log output
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 688
diff changeset
   164
  | o  6:354011cd103f[] (stable/draft) add cc
685
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   165
  | |
692
a2938a539f44 test-prune: simplified log output
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 688
diff changeset
   166
  | o  5:814c38b95e72[] (stable/draft) add bb
685
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   167
  |/
693
d3c1fe0035d1 prune: handle bookmark
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 692
diff changeset
   168
  o  0:1f0dee641bb7[BABAR] (stable/public) add a
685
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   169
  
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   170
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   171
two old, two new (should be denied)
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   172
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   173
  $ hg prune 'desc("add cc")' 'desc("add bb")' -s 'desc("add nD")' -s 'desc("add nC")'
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   174
  abort: Can't use multiple successors for multiple precursors
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   175
  [255]
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   176
  $ hg debugobsolete
716
4c0f6d555032 prune: add --user and --date options
Levi Bard <levi@unity3d.com>
parents: 715
diff changeset
   177
  9d206ffc875e1bc304590549be293be36821e66c 0 {'date': '314064000 0', 'user': 'blah'} (glob)
685
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   178
  7c3bad9141dcb46ff89abf5f61856facd56e476c 0 {'date': '*', 'user': 'test'} (glob)
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   179
  4538525df7e2b9f09423636c61ef63a4cb872a2d 0 {'date': '*', 'user': 'test'} (glob)
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   180
  47d2a3944de8b013de3be9578e8e344ea2e6c097 0 {'date': '*', 'user': 'test'} (glob)
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   181
  bb5e90a7ea1f3b4b38b23150a4a597b6146d70ef 6e8148413dd541855b72a920a90c06fca127c7e7 0 {'date': '*', 'user': 'test'} (glob)
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   182
  00ded550b1e28bba454bd34cec1269d22cf3ef25 aa96dc3f04c2c2341fe6880aeb6dc9fbffff9ef9 8ee176ff1d4b2034ce51e3efc579c2de346b631d 0 {'date': '**', 'user': 'test'} (glob)
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   183
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   184
two old, one new:
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   185
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   186
  $ hg prune 'desc("add cc")' 'desc("add bb")' -s 'desc("add nB")'
688
f2c3fd21fa63 prune: add an informative message about the number of pruned changesets
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 687
diff changeset
   187
  2 changesets pruned
685
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   188
  $ hg debugobsolete
716
4c0f6d555032 prune: add --user and --date options
Levi Bard <levi@unity3d.com>
parents: 715
diff changeset
   189
  9d206ffc875e1bc304590549be293be36821e66c 0 {'date': '314064000 0', 'user': 'blah'} (glob)
685
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   190
  7c3bad9141dcb46ff89abf5f61856facd56e476c 0 {'date': '*', 'user': 'test'} (glob)
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   191
  4538525df7e2b9f09423636c61ef63a4cb872a2d 0 {'date': '*', 'user': 'test'} (glob)
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   192
  47d2a3944de8b013de3be9578e8e344ea2e6c097 0 {'date': '*', 'user': 'test'} (glob)
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   193
  bb5e90a7ea1f3b4b38b23150a4a597b6146d70ef 6e8148413dd541855b72a920a90c06fca127c7e7 0 {'date': '*', 'user': 'test'} (glob)
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   194
  00ded550b1e28bba454bd34cec1269d22cf3ef25 aa96dc3f04c2c2341fe6880aeb6dc9fbffff9ef9 8ee176ff1d4b2034ce51e3efc579c2de346b631d 0 {'date': '**', 'user': 'test'} (glob)
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   195
  814c38b95e72dfe2cbf675b1649ea9d780c89a80 6f6f25e4f748d8f7571777e6e168aedf50350ce8 0 {'date': '*', 'user': 'test'} (glob)
7398f9729821 prune: add test and more robusness
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff changeset
   196
  354011cd103f58bbbd9091a3cee6d6a6bd0dddf7 6f6f25e4f748d8f7571777e6e168aedf50350ce8 0 {'date': '*', 'user': 'test'} (glob)
715
070bbbb0e6f2 prune: add strip-like bookmark
Levi Bard <levi@unity3d.com>
parents: 693
diff changeset
   197
070bbbb0e6f2 prune: add strip-like bookmark
Levi Bard <levi@unity3d.com>
parents: 693
diff changeset
   198
test hg prune -B bookmark
070bbbb0e6f2 prune: add strip-like bookmark
Levi Bard <levi@unity3d.com>
parents: 693
diff changeset
   199
yoinked from test-mq-strip.t
070bbbb0e6f2 prune: add strip-like bookmark
Levi Bard <levi@unity3d.com>
parents: 693
diff changeset
   200
070bbbb0e6f2 prune: add strip-like bookmark
Levi Bard <levi@unity3d.com>
parents: 693
diff changeset
   201
  $ cd ..
070bbbb0e6f2 prune: add strip-like bookmark
Levi Bard <levi@unity3d.com>
parents: 693
diff changeset
   202
  $ hg init bookmarks
070bbbb0e6f2 prune: add strip-like bookmark
Levi Bard <levi@unity3d.com>
parents: 693
diff changeset
   203
  $ cd bookmarks
070bbbb0e6f2 prune: add strip-like bookmark
Levi Bard <levi@unity3d.com>
parents: 693
diff changeset
   204
  $ hg debugbuilddag '..<2.*1/2:m<2+3:c<m+3:a<2.:b'
070bbbb0e6f2 prune: add strip-like bookmark
Levi Bard <levi@unity3d.com>
parents: 693
diff changeset
   205
  $ hg bookmark -r 'a' 'todelete'
070bbbb0e6f2 prune: add strip-like bookmark
Levi Bard <levi@unity3d.com>
parents: 693
diff changeset
   206
  $ hg bookmark -r 'b' 'B'
070bbbb0e6f2 prune: add strip-like bookmark
Levi Bard <levi@unity3d.com>
parents: 693
diff changeset
   207
  $ hg bookmark -r 'b' 'nostrip'
070bbbb0e6f2 prune: add strip-like bookmark
Levi Bard <levi@unity3d.com>
parents: 693
diff changeset
   208
  $ hg bookmark -r 'c' 'delete'
070bbbb0e6f2 prune: add strip-like bookmark
Levi Bard <levi@unity3d.com>
parents: 693
diff changeset
   209
  $ hg up -C todelete
070bbbb0e6f2 prune: add strip-like bookmark
Levi Bard <levi@unity3d.com>
parents: 693
diff changeset
   210
  0 files updated, 0 files merged, 0 files removed, 0 files unresolved
070bbbb0e6f2 prune: add strip-like bookmark
Levi Bard <levi@unity3d.com>
parents: 693
diff changeset
   211
  $ hg prune -B nostrip
070bbbb0e6f2 prune: add strip-like bookmark
Levi Bard <levi@unity3d.com>
parents: 693
diff changeset
   212
  bookmark 'nostrip' deleted
070bbbb0e6f2 prune: add strip-like bookmark
Levi Bard <levi@unity3d.com>
parents: 693
diff changeset
   213
  abort: nothing to prune
070bbbb0e6f2 prune: add strip-like bookmark
Levi Bard <levi@unity3d.com>
parents: 693
diff changeset
   214
  [255]
070bbbb0e6f2 prune: add strip-like bookmark
Levi Bard <levi@unity3d.com>
parents: 693
diff changeset
   215
  $ hg prune -B todelete
070bbbb0e6f2 prune: add strip-like bookmark
Levi Bard <levi@unity3d.com>
parents: 693
diff changeset
   216
  1 changesets pruned
070bbbb0e6f2 prune: add strip-like bookmark
Levi Bard <levi@unity3d.com>
parents: 693
diff changeset
   217
  0 files updated, 0 files merged, 0 files removed, 0 files unresolved
070bbbb0e6f2 prune: add strip-like bookmark
Levi Bard <levi@unity3d.com>
parents: 693
diff changeset
   218
  working directory now at d62d843c9a01
070bbbb0e6f2 prune: add strip-like bookmark
Levi Bard <levi@unity3d.com>
parents: 693
diff changeset
   219
  bookmark 'todelete' deleted
070bbbb0e6f2 prune: add strip-like bookmark
Levi Bard <levi@unity3d.com>
parents: 693
diff changeset
   220
  $ hg id -ir dcbb326fdec2
740
eeaacbb688df test: adapt to 2.6 message improvement
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 716
diff changeset
   221
  abort: unknown revision 'dcbb326fdec2'!
715
070bbbb0e6f2 prune: add strip-like bookmark
Levi Bard <levi@unity3d.com>
parents: 693
diff changeset
   222
  [255]
070bbbb0e6f2 prune: add strip-like bookmark
Levi Bard <levi@unity3d.com>
parents: 693
diff changeset
   223
  $ hg id -ir d62d843c9a01
070bbbb0e6f2 prune: add strip-like bookmark
Levi Bard <levi@unity3d.com>
parents: 693
diff changeset
   224
  d62d843c9a01
070bbbb0e6f2 prune: add strip-like bookmark
Levi Bard <levi@unity3d.com>
parents: 693
diff changeset
   225
  $ hg bookmarks
070bbbb0e6f2 prune: add strip-like bookmark
Levi Bard <levi@unity3d.com>
parents: 693
diff changeset
   226
     B                         10:ff43616e5d0f
070bbbb0e6f2 prune: add strip-like bookmark
Levi Bard <levi@unity3d.com>
parents: 693
diff changeset
   227
     delete                    6:2702dd0c91e7
070bbbb0e6f2 prune: add strip-like bookmark
Levi Bard <levi@unity3d.com>
parents: 693
diff changeset
   228
  $ hg prune -B delete
070bbbb0e6f2 prune: add strip-like bookmark
Levi Bard <levi@unity3d.com>
parents: 693
diff changeset
   229
  3 changesets pruned
070bbbb0e6f2 prune: add strip-like bookmark
Levi Bard <levi@unity3d.com>
parents: 693
diff changeset
   230
  bookmark 'delete' deleted
070bbbb0e6f2 prune: add strip-like bookmark
Levi Bard <levi@unity3d.com>
parents: 693
diff changeset
   231
  $ hg id -ir 6:2702dd0c91e7
740
eeaacbb688df test: adapt to 2.6 message improvement
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 716
diff changeset
   232
  abort: unknown revision '2702dd0c91e7'!
715
070bbbb0e6f2 prune: add strip-like bookmark
Levi Bard <levi@unity3d.com>
parents: 693
diff changeset
   233
  [255]
070bbbb0e6f2 prune: add strip-like bookmark
Levi Bard <levi@unity3d.com>
parents: 693
diff changeset
   234