tests/test-obsolete-rebase.t
author Pierre-Yves David <pierre-yves.david@logilab.fr>
Thu, 23 Aug 2012 18:00:29 +0200
changeset 486 2111c655b4f5
parent 472 641e0cd43d6d
child 491 6989d8fe4ed2
permissions -rw-r--r--
fix typo
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
279
0d87b1fbf32b obsolete: handle rebase removing empty changesets
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
     1
  $ cat >> $HGRCPATH <<EOF
0d87b1fbf32b obsolete: handle rebase removing empty changesets
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
     2
  > [defaults]
0d87b1fbf32b obsolete: handle rebase removing empty changesets
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
     3
  > amend=-d "0 0"
0d87b1fbf32b obsolete: handle rebase removing empty changesets
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
     4
  > [extensions]
0d87b1fbf32b obsolete: handle rebase removing empty changesets
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
     5
  > hgext.rebase=
0d87b1fbf32b obsolete: handle rebase removing empty changesets
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
     6
  > hgext.graphlog=
0d87b1fbf32b obsolete: handle rebase removing empty changesets
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
     7
  > EOF
0d87b1fbf32b obsolete: handle rebase removing empty changesets
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
     8
  $ echo "obsolete=$(echo $(dirname $TESTDIR))/hgext/obsolete.py" >> $HGRCPATH
0d87b1fbf32b obsolete: handle rebase removing empty changesets
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
     9
0d87b1fbf32b obsolete: handle rebase removing empty changesets
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    10
  $ glog() {
0d87b1fbf32b obsolete: handle rebase removing empty changesets
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    11
  >   hg glog --template '{rev}:{node|short}@{branch}({phase}) {desc|firstline}\n'\
0d87b1fbf32b obsolete: handle rebase removing empty changesets
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    12
  >     "$@"
0d87b1fbf32b obsolete: handle rebase removing empty changesets
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    13
  > }
0d87b1fbf32b obsolete: handle rebase removing empty changesets
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    14
0d87b1fbf32b obsolete: handle rebase removing empty changesets
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    15
  $ hg init repo
0d87b1fbf32b obsolete: handle rebase removing empty changesets
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    16
  $ cd repo
0d87b1fbf32b obsolete: handle rebase removing empty changesets
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    17
  $ echo a > a
0d87b1fbf32b obsolete: handle rebase removing empty changesets
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    18
  $ hg ci -Am adda
0d87b1fbf32b obsolete: handle rebase removing empty changesets
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    19
  adding a
0d87b1fbf32b obsolete: handle rebase removing empty changesets
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    20
  $ echo a >> a
0d87b1fbf32b obsolete: handle rebase removing empty changesets
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    21
  $ hg ci -m changea
0d87b1fbf32b obsolete: handle rebase removing empty changesets
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    22
0d87b1fbf32b obsolete: handle rebase removing empty changesets
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    23
Test regular rebase
0d87b1fbf32b obsolete: handle rebase removing empty changesets
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    24
0d87b1fbf32b obsolete: handle rebase removing empty changesets
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    25
  $ hg up 0
0d87b1fbf32b obsolete: handle rebase removing empty changesets
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    26
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
0d87b1fbf32b obsolete: handle rebase removing empty changesets
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    27
  $ echo b > b
0d87b1fbf32b obsolete: handle rebase removing empty changesets
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    28
  $ hg ci -Am addb
0d87b1fbf32b obsolete: handle rebase removing empty changesets
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    29
  adding b
0d87b1fbf32b obsolete: handle rebase removing empty changesets
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    30
  created new head
285
691cb55358b0 obsolete: do not obsolete rebase --detach nullmerge revs
Patrick Mezard <patrick@mezard.eu>
parents: 283
diff changeset
    31
  $ echo e > e
691cb55358b0 obsolete: do not obsolete rebase --detach nullmerge revs
Patrick Mezard <patrick@mezard.eu>
parents: 283
diff changeset
    32
  $ hg ci -Am adde e
472
641e0cd43d6d obsolete: prevent rebasing of public changeset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 455
diff changeset
    33
641e0cd43d6d obsolete: prevent rebasing of public changeset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 455
diff changeset
    34
(phase compliance)
641e0cd43d6d obsolete: prevent rebasing of public changeset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 455
diff changeset
    35
641e0cd43d6d obsolete: prevent rebasing of public changeset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 455
diff changeset
    36
  $ hg phase --public 3
641e0cd43d6d obsolete: prevent rebasing of public changeset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 455
diff changeset
    37
  $ hg rebase -d 1 -r 3
641e0cd43d6d obsolete: prevent rebasing of public changeset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 455
diff changeset
    38
  abort: can't rebase immutable changeset 98e4a024635e
641e0cd43d6d obsolete: prevent rebasing of public changeset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 455
diff changeset
    39
  (see hg help phases for details)
641e0cd43d6d obsolete: prevent rebasing of public changeset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 455
diff changeset
    40
  [255]
641e0cd43d6d obsolete: prevent rebasing of public changeset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 455
diff changeset
    41
  $ hg phase --draft --force 0
311
5eecfda0a5c7 obsolete: enable rebase --keep again
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 302
diff changeset
    42
  $ hg rebase -d 1 -r 3 --detach --keep  
5eecfda0a5c7 obsolete: enable rebase --keep again
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 302
diff changeset
    43
  $ glog
5eecfda0a5c7 obsolete: enable rebase --keep again
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 302
diff changeset
    44
  @  4:9c5494949763@default(draft) adde
5eecfda0a5c7 obsolete: enable rebase --keep again
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 302
diff changeset
    45
  |
5eecfda0a5c7 obsolete: enable rebase --keep again
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 302
diff changeset
    46
  | o  3:98e4a024635e@default(draft) adde
5eecfda0a5c7 obsolete: enable rebase --keep again
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 302
diff changeset
    47
  | |
5eecfda0a5c7 obsolete: enable rebase --keep again
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 302
diff changeset
    48
  | o  2:102a90ea7b4a@default(draft) addb
5eecfda0a5c7 obsolete: enable rebase --keep again
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 302
diff changeset
    49
  | |
5eecfda0a5c7 obsolete: enable rebase --keep again
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 302
diff changeset
    50
  o |  1:540395c44225@default(draft) changea
5eecfda0a5c7 obsolete: enable rebase --keep again
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 302
diff changeset
    51
  |/
5eecfda0a5c7 obsolete: enable rebase --keep again
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 302
diff changeset
    52
  o  0:07f494440405@default(draft) adda
5eecfda0a5c7 obsolete: enable rebase --keep again
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 302
diff changeset
    53
  
5eecfda0a5c7 obsolete: enable rebase --keep again
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 302
diff changeset
    54
  $ glog --hidden
5eecfda0a5c7 obsolete: enable rebase --keep again
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 302
diff changeset
    55
  @  4:9c5494949763@default(draft) adde
5eecfda0a5c7 obsolete: enable rebase --keep again
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 302
diff changeset
    56
  |
5eecfda0a5c7 obsolete: enable rebase --keep again
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 302
diff changeset
    57
  | o  3:98e4a024635e@default(draft) adde
5eecfda0a5c7 obsolete: enable rebase --keep again
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 302
diff changeset
    58
  | |
5eecfda0a5c7 obsolete: enable rebase --keep again
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 302
diff changeset
    59
  | o  2:102a90ea7b4a@default(draft) addb
5eecfda0a5c7 obsolete: enable rebase --keep again
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 302
diff changeset
    60
  | |
5eecfda0a5c7 obsolete: enable rebase --keep again
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 302
diff changeset
    61
  o |  1:540395c44225@default(draft) changea
5eecfda0a5c7 obsolete: enable rebase --keep again
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 302
diff changeset
    62
  |/
5eecfda0a5c7 obsolete: enable rebase --keep again
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 302
diff changeset
    63
  o  0:07f494440405@default(draft) adda
5eecfda0a5c7 obsolete: enable rebase --keep again
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 302
diff changeset
    64
  
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 385
diff changeset
    65
  $ hg debugobsolete
311
5eecfda0a5c7 obsolete: enable rebase --keep again
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 302
diff changeset
    66
  $ hg --config extensions.hgext.mq= strip tip
5eecfda0a5c7 obsolete: enable rebase --keep again
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 302
diff changeset
    67
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
5eecfda0a5c7 obsolete: enable rebase --keep again
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 302
diff changeset
    68
  saved backup bundle to $TESTTMP/repo/.hg/strip-backup/9c5494949763-backup.hg
5eecfda0a5c7 obsolete: enable rebase --keep again
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 302
diff changeset
    69
  $ hg rebase -d 1 -r 3 --detach
5eecfda0a5c7 obsolete: enable rebase --keep again
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 302
diff changeset
    70
  $ glog
5eecfda0a5c7 obsolete: enable rebase --keep again
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 302
diff changeset
    71
  @  4:9c5494949763@default(draft) adde
5eecfda0a5c7 obsolete: enable rebase --keep again
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 302
diff changeset
    72
  |
5eecfda0a5c7 obsolete: enable rebase --keep again
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 302
diff changeset
    73
  | o  2:102a90ea7b4a@default(draft) addb
5eecfda0a5c7 obsolete: enable rebase --keep again
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 302
diff changeset
    74
  | |
5eecfda0a5c7 obsolete: enable rebase --keep again
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 302
diff changeset
    75
  o |  1:540395c44225@default(draft) changea
5eecfda0a5c7 obsolete: enable rebase --keep again
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 302
diff changeset
    76
  |/
5eecfda0a5c7 obsolete: enable rebase --keep again
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 302
diff changeset
    77
  o  0:07f494440405@default(draft) adda
5eecfda0a5c7 obsolete: enable rebase --keep again
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 302
diff changeset
    78
  
279
0d87b1fbf32b obsolete: handle rebase removing empty changesets
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    79
  $ glog --hidden
285
691cb55358b0 obsolete: do not obsolete rebase --detach nullmerge revs
Patrick Mezard <patrick@mezard.eu>
parents: 283
diff changeset
    80
  @  4:9c5494949763@default(draft) adde
279
0d87b1fbf32b obsolete: handle rebase removing empty changesets
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    81
  |
385
cdcdedc532b7 obsolete: Stop turning obsolete secret changesets secret
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 346
diff changeset
    82
  | x  3:98e4a024635e@default(draft) adde
285
691cb55358b0 obsolete: do not obsolete rebase --detach nullmerge revs
Patrick Mezard <patrick@mezard.eu>
parents: 283
diff changeset
    83
  | |
691cb55358b0 obsolete: do not obsolete rebase --detach nullmerge revs
Patrick Mezard <patrick@mezard.eu>
parents: 283
diff changeset
    84
  | o  2:102a90ea7b4a@default(draft) addb
279
0d87b1fbf32b obsolete: handle rebase removing empty changesets
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    85
  | |
0d87b1fbf32b obsolete: handle rebase removing empty changesets
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    86
  o |  1:540395c44225@default(draft) changea
0d87b1fbf32b obsolete: handle rebase removing empty changesets
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    87
  |/
0d87b1fbf32b obsolete: handle rebase removing empty changesets
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    88
  o  0:07f494440405@default(draft) adda
0d87b1fbf32b obsolete: handle rebase removing empty changesets
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    89
  
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 385
diff changeset
    90
  $ hg debugobsolete
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 385
diff changeset
    91
  98e4a024635e8c50928144c9277a4388d26bd786 9c54949497631abfb5a255d96746bbd3a42ed2ba 0 {'date': '* *', 'user': 'test'} (glob)
279
0d87b1fbf32b obsolete: handle rebase removing empty changesets
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    92
0d87b1fbf32b obsolete: handle rebase removing empty changesets
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    93
Test rebase with deleted empty revision
0d87b1fbf32b obsolete: handle rebase removing empty changesets
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    94
0d87b1fbf32b obsolete: handle rebase removing empty changesets
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    95
  $ hg up 0
0d87b1fbf32b obsolete: handle rebase removing empty changesets
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    96
  1 files updated, 0 files merged, 1 files removed, 0 files unresolved
0d87b1fbf32b obsolete: handle rebase removing empty changesets
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    97
  $ hg branch foo
0d87b1fbf32b obsolete: handle rebase removing empty changesets
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    98
  marked working directory as branch foo
0d87b1fbf32b obsolete: handle rebase removing empty changesets
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    99
  (branches are permanent and global, did you want a bookmark?)
0d87b1fbf32b obsolete: handle rebase removing empty changesets
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
   100
  $ echo a >> a
0d87b1fbf32b obsolete: handle rebase removing empty changesets
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
   101
  $ hg ci -m changea
0d87b1fbf32b obsolete: handle rebase removing empty changesets
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
   102
  $ hg rebase -d 1
0d87b1fbf32b obsolete: handle rebase removing empty changesets
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
   103
  $ glog --hidden
385
cdcdedc532b7 obsolete: Stop turning obsolete secret changesets secret
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 346
diff changeset
   104
  x  5:4e322f7ce8e3@foo(draft) changea
279
0d87b1fbf32b obsolete: handle rebase removing empty changesets
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
   105
  |
285
691cb55358b0 obsolete: do not obsolete rebase --detach nullmerge revs
Patrick Mezard <patrick@mezard.eu>
parents: 283
diff changeset
   106
  | o  4:9c5494949763@default(draft) adde
279
0d87b1fbf32b obsolete: handle rebase removing empty changesets
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
   107
  | |
385
cdcdedc532b7 obsolete: Stop turning obsolete secret changesets secret
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 346
diff changeset
   108
  | | x  3:98e4a024635e@default(draft) adde
285
691cb55358b0 obsolete: do not obsolete rebase --detach nullmerge revs
Patrick Mezard <patrick@mezard.eu>
parents: 283
diff changeset
   109
  | | |
691cb55358b0 obsolete: do not obsolete rebase --detach nullmerge revs
Patrick Mezard <patrick@mezard.eu>
parents: 283
diff changeset
   110
  +---o  2:102a90ea7b4a@default(draft) addb
279
0d87b1fbf32b obsolete: handle rebase removing empty changesets
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
   111
  | |
0d87b1fbf32b obsolete: handle rebase removing empty changesets
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
   112
  | @  1:540395c44225@default(draft) changea
0d87b1fbf32b obsolete: handle rebase removing empty changesets
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
   113
  |/
0d87b1fbf32b obsolete: handle rebase removing empty changesets
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
   114
  o  0:07f494440405@default(draft) adda
0d87b1fbf32b obsolete: handle rebase removing empty changesets
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
   115
  
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 385
diff changeset
   116
  $ hg debugobsolete
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 385
diff changeset
   117
  98e4a024635e8c50928144c9277a4388d26bd786 9c54949497631abfb5a255d96746bbd3a42ed2ba 0 {'date': '* *', 'user': 'test'} (glob)
455
f46a41006136 obsolete: simplify rebase wrapping code and change relation creation
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 444
diff changeset
   118
  4e322f7ce8e3e4203950eac9ece27bf7e45ffa6c 540395c442253af3b991be882b539e7e198b5808 0 {'date': '* *', 'user': 'test'} (glob)
282
05ab164c6593 obsolete: handle rebase --collapse
Patrick Mezard <patrick@mezard.eu>
parents: 280
diff changeset
   119
05ab164c6593 obsolete: handle rebase --collapse
Patrick Mezard <patrick@mezard.eu>
parents: 280
diff changeset
   120
Test rebase --collapse
05ab164c6593 obsolete: handle rebase --collapse
Patrick Mezard <patrick@mezard.eu>
parents: 280
diff changeset
   121
05ab164c6593 obsolete: handle rebase --collapse
Patrick Mezard <patrick@mezard.eu>
parents: 280
diff changeset
   122
  $ hg up 0
05ab164c6593 obsolete: handle rebase --collapse
Patrick Mezard <patrick@mezard.eu>
parents: 280
diff changeset
   123
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
05ab164c6593 obsolete: handle rebase --collapse
Patrick Mezard <patrick@mezard.eu>
parents: 280
diff changeset
   124
  $ echo c > c
05ab164c6593 obsolete: handle rebase --collapse
Patrick Mezard <patrick@mezard.eu>
parents: 280
diff changeset
   125
  $ hg ci -Am addc
05ab164c6593 obsolete: handle rebase --collapse
Patrick Mezard <patrick@mezard.eu>
parents: 280
diff changeset
   126
  adding c
05ab164c6593 obsolete: handle rebase --collapse
Patrick Mezard <patrick@mezard.eu>
parents: 280
diff changeset
   127
  created new head
05ab164c6593 obsolete: handle rebase --collapse
Patrick Mezard <patrick@mezard.eu>
parents: 280
diff changeset
   128
  $ echo c >> c
05ab164c6593 obsolete: handle rebase --collapse
Patrick Mezard <patrick@mezard.eu>
parents: 280
diff changeset
   129
  $ hg ci -m changec
05ab164c6593 obsolete: handle rebase --collapse
Patrick Mezard <patrick@mezard.eu>
parents: 280
diff changeset
   130
  $ hg rebase --collapse -d 1
05ab164c6593 obsolete: handle rebase --collapse
Patrick Mezard <patrick@mezard.eu>
parents: 280
diff changeset
   131
  merging c
05ab164c6593 obsolete: handle rebase --collapse
Patrick Mezard <patrick@mezard.eu>
parents: 280
diff changeset
   132
  $ glog --hidden
285
691cb55358b0 obsolete: do not obsolete rebase --detach nullmerge revs
Patrick Mezard <patrick@mezard.eu>
parents: 283
diff changeset
   133
  @  8:a7773ffa7edc@default(draft) Collapsed revision
282
05ab164c6593 obsolete: handle rebase --collapse
Patrick Mezard <patrick@mezard.eu>
parents: 280
diff changeset
   134
  |
385
cdcdedc532b7 obsolete: Stop turning obsolete secret changesets secret
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 346
diff changeset
   135
  | x  7:03f31481307a@default(draft) changec
282
05ab164c6593 obsolete: handle rebase --collapse
Patrick Mezard <patrick@mezard.eu>
parents: 280
diff changeset
   136
  | |
385
cdcdedc532b7 obsolete: Stop turning obsolete secret changesets secret
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 346
diff changeset
   137
  | x  6:076e9b2ffbe1@default(draft) addc
282
05ab164c6593 obsolete: handle rebase --collapse
Patrick Mezard <patrick@mezard.eu>
parents: 280
diff changeset
   138
  | |
385
cdcdedc532b7 obsolete: Stop turning obsolete secret changesets secret
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 346
diff changeset
   139
  | | x  5:4e322f7ce8e3@foo(draft) changea
282
05ab164c6593 obsolete: handle rebase --collapse
Patrick Mezard <patrick@mezard.eu>
parents: 280
diff changeset
   140
  | |/
285
691cb55358b0 obsolete: do not obsolete rebase --detach nullmerge revs
Patrick Mezard <patrick@mezard.eu>
parents: 283
diff changeset
   141
  +---o  4:9c5494949763@default(draft) adde
282
05ab164c6593 obsolete: handle rebase --collapse
Patrick Mezard <patrick@mezard.eu>
parents: 280
diff changeset
   142
  | |
385
cdcdedc532b7 obsolete: Stop turning obsolete secret changesets secret
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 346
diff changeset
   143
  | | x  3:98e4a024635e@default(draft) adde
285
691cb55358b0 obsolete: do not obsolete rebase --detach nullmerge revs
Patrick Mezard <patrick@mezard.eu>
parents: 283
diff changeset
   144
  | | |
691cb55358b0 obsolete: do not obsolete rebase --detach nullmerge revs
Patrick Mezard <patrick@mezard.eu>
parents: 283
diff changeset
   145
  | | o  2:102a90ea7b4a@default(draft) addb
282
05ab164c6593 obsolete: handle rebase --collapse
Patrick Mezard <patrick@mezard.eu>
parents: 280
diff changeset
   146
  | |/
05ab164c6593 obsolete: handle rebase --collapse
Patrick Mezard <patrick@mezard.eu>
parents: 280
diff changeset
   147
  o |  1:540395c44225@default(draft) changea
05ab164c6593 obsolete: handle rebase --collapse
Patrick Mezard <patrick@mezard.eu>
parents: 280
diff changeset
   148
  |/
05ab164c6593 obsolete: handle rebase --collapse
Patrick Mezard <patrick@mezard.eu>
parents: 280
diff changeset
   149
  o  0:07f494440405@default(draft) adda
05ab164c6593 obsolete: handle rebase --collapse
Patrick Mezard <patrick@mezard.eu>
parents: 280
diff changeset
   150
  
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 385
diff changeset
   151
  $ hg debugobsolete
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 385
diff changeset
   152
  98e4a024635e8c50928144c9277a4388d26bd786 9c54949497631abfb5a255d96746bbd3a42ed2ba 0 {'date': '* *', 'user': 'test'} (glob)
455
f46a41006136 obsolete: simplify rebase wrapping code and change relation creation
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 444
diff changeset
   153
  4e322f7ce8e3e4203950eac9ece27bf7e45ffa6c 540395c442253af3b991be882b539e7e198b5808 0 {'date': '* *', 'user': 'test'} (glob)
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 385
diff changeset
   154
  076e9b2ffbe11c7bcb9ee97f5c0c8b88a1a10b93 a7773ffa7edcfac27b5dcdb2d5c1036e15a49861 0 {'date': '* *', 'user': 'test'} (glob)
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 385
diff changeset
   155
  03f31481307aaf5275d07ec28c1c59931759ccd2 a7773ffa7edcfac27b5dcdb2d5c1036e15a49861 0 {'date': '* *', 'user': 'test'} (glob)
283
8d1a8eeb5a84 test-obsolete-rebase.t: test --abort and --continue
Patrick Mezard <patrick@mezard.eu>
parents: 282
diff changeset
   156
8d1a8eeb5a84 test-obsolete-rebase.t: test --abort and --continue
Patrick Mezard <patrick@mezard.eu>
parents: 282
diff changeset
   157
Test rebase --abort
8d1a8eeb5a84 test-obsolete-rebase.t: test --abort and --continue
Patrick Mezard <patrick@mezard.eu>
parents: 282
diff changeset
   158
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 385
diff changeset
   159
  $ hg debugobsolete > ../successors.old
283
8d1a8eeb5a84 test-obsolete-rebase.t: test --abort and --continue
Patrick Mezard <patrick@mezard.eu>
parents: 282
diff changeset
   160
  $ hg up 0
8d1a8eeb5a84 test-obsolete-rebase.t: test --abort and --continue
Patrick Mezard <patrick@mezard.eu>
parents: 282
diff changeset
   161
  1 files updated, 0 files merged, 1 files removed, 0 files unresolved
8d1a8eeb5a84 test-obsolete-rebase.t: test --abort and --continue
Patrick Mezard <patrick@mezard.eu>
parents: 282
diff changeset
   162
  $ echo d > d
8d1a8eeb5a84 test-obsolete-rebase.t: test --abort and --continue
Patrick Mezard <patrick@mezard.eu>
parents: 282
diff changeset
   163
  $ hg ci -Am addd d
8d1a8eeb5a84 test-obsolete-rebase.t: test --abort and --continue
Patrick Mezard <patrick@mezard.eu>
parents: 282
diff changeset
   164
  created new head
8d1a8eeb5a84 test-obsolete-rebase.t: test --abort and --continue
Patrick Mezard <patrick@mezard.eu>
parents: 282
diff changeset
   165
  $ echo b >> a
8d1a8eeb5a84 test-obsolete-rebase.t: test --abort and --continue
Patrick Mezard <patrick@mezard.eu>
parents: 282
diff changeset
   166
  $ hg ci -m appendab
8d1a8eeb5a84 test-obsolete-rebase.t: test --abort and --continue
Patrick Mezard <patrick@mezard.eu>
parents: 282
diff changeset
   167
  $ hg rebase -d 1
8d1a8eeb5a84 test-obsolete-rebase.t: test --abort and --continue
Patrick Mezard <patrick@mezard.eu>
parents: 282
diff changeset
   168
  merging a
8d1a8eeb5a84 test-obsolete-rebase.t: test --abort and --continue
Patrick Mezard <patrick@mezard.eu>
parents: 282
diff changeset
   169
  warning: conflicts during merge.
8d1a8eeb5a84 test-obsolete-rebase.t: test --abort and --continue
Patrick Mezard <patrick@mezard.eu>
parents: 282
diff changeset
   170
  merging a incomplete! (edit conflicts, then use 'hg resolve --mark')
8d1a8eeb5a84 test-obsolete-rebase.t: test --abort and --continue
Patrick Mezard <patrick@mezard.eu>
parents: 282
diff changeset
   171
  abort: unresolved conflicts (see hg resolve, then hg rebase --continue)
8d1a8eeb5a84 test-obsolete-rebase.t: test --abort and --continue
Patrick Mezard <patrick@mezard.eu>
parents: 282
diff changeset
   172
  [255]
8d1a8eeb5a84 test-obsolete-rebase.t: test --abort and --continue
Patrick Mezard <patrick@mezard.eu>
parents: 282
diff changeset
   173
  $ hg rebase --abort
8d1a8eeb5a84 test-obsolete-rebase.t: test --abort and --continue
Patrick Mezard <patrick@mezard.eu>
parents: 282
diff changeset
   174
  saved backup bundle to $TESTTMP/repo/.hg/strip-backup/03f165c84ea8-backup.hg
8d1a8eeb5a84 test-obsolete-rebase.t: test --abort and --continue
Patrick Mezard <patrick@mezard.eu>
parents: 282
diff changeset
   175
  rebase aborted
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 385
diff changeset
   176
  $ hg debugobsolete > ../successors.new
283
8d1a8eeb5a84 test-obsolete-rebase.t: test --abort and --continue
Patrick Mezard <patrick@mezard.eu>
parents: 282
diff changeset
   177
  $ diff -u ../successors.old ../successors.new
8d1a8eeb5a84 test-obsolete-rebase.t: test --abort and --continue
Patrick Mezard <patrick@mezard.eu>
parents: 282
diff changeset
   178
8d1a8eeb5a84 test-obsolete-rebase.t: test --abort and --continue
Patrick Mezard <patrick@mezard.eu>
parents: 282
diff changeset
   179
Test rebase --continue
8d1a8eeb5a84 test-obsolete-rebase.t: test --abort and --continue
Patrick Mezard <patrick@mezard.eu>
parents: 282
diff changeset
   180
8d1a8eeb5a84 test-obsolete-rebase.t: test --abort and --continue
Patrick Mezard <patrick@mezard.eu>
parents: 282
diff changeset
   181
  $ hg rebase -d 1
8d1a8eeb5a84 test-obsolete-rebase.t: test --abort and --continue
Patrick Mezard <patrick@mezard.eu>
parents: 282
diff changeset
   182
  merging a
8d1a8eeb5a84 test-obsolete-rebase.t: test --abort and --continue
Patrick Mezard <patrick@mezard.eu>
parents: 282
diff changeset
   183
  warning: conflicts during merge.
8d1a8eeb5a84 test-obsolete-rebase.t: test --abort and --continue
Patrick Mezard <patrick@mezard.eu>
parents: 282
diff changeset
   184
  merging a incomplete! (edit conflicts, then use 'hg resolve --mark')
8d1a8eeb5a84 test-obsolete-rebase.t: test --abort and --continue
Patrick Mezard <patrick@mezard.eu>
parents: 282
diff changeset
   185
  abort: unresolved conflicts (see hg resolve, then hg rebase --continue)
8d1a8eeb5a84 test-obsolete-rebase.t: test --abort and --continue
Patrick Mezard <patrick@mezard.eu>
parents: 282
diff changeset
   186
  [255]
8d1a8eeb5a84 test-obsolete-rebase.t: test --abort and --continue
Patrick Mezard <patrick@mezard.eu>
parents: 282
diff changeset
   187
  $ hg resolve --tool internal:other a
8d1a8eeb5a84 test-obsolete-rebase.t: test --abort and --continue
Patrick Mezard <patrick@mezard.eu>
parents: 282
diff changeset
   188
  $ hg rebase --continue
8d1a8eeb5a84 test-obsolete-rebase.t: test --abort and --continue
Patrick Mezard <patrick@mezard.eu>
parents: 282
diff changeset
   189
  $ glog --hidden
285
691cb55358b0 obsolete: do not obsolete rebase --detach nullmerge revs
Patrick Mezard <patrick@mezard.eu>
parents: 283
diff changeset
   190
  @  12:1951ead97108@default(draft) appendab
283
8d1a8eeb5a84 test-obsolete-rebase.t: test --abort and --continue
Patrick Mezard <patrick@mezard.eu>
parents: 282
diff changeset
   191
  |
285
691cb55358b0 obsolete: do not obsolete rebase --detach nullmerge revs
Patrick Mezard <patrick@mezard.eu>
parents: 283
diff changeset
   192
  o  11:03f165c84ea8@default(draft) addd
283
8d1a8eeb5a84 test-obsolete-rebase.t: test --abort and --continue
Patrick Mezard <patrick@mezard.eu>
parents: 282
diff changeset
   193
  |
385
cdcdedc532b7 obsolete: Stop turning obsolete secret changesets secret
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 346
diff changeset
   194
  | x  10:4b9d80f48523@default(draft) appendab
283
8d1a8eeb5a84 test-obsolete-rebase.t: test --abort and --continue
Patrick Mezard <patrick@mezard.eu>
parents: 282
diff changeset
   195
  | |
385
cdcdedc532b7 obsolete: Stop turning obsolete secret changesets secret
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 346
diff changeset
   196
  | x  9:a31943eabc43@default(draft) addd
283
8d1a8eeb5a84 test-obsolete-rebase.t: test --abort and --continue
Patrick Mezard <patrick@mezard.eu>
parents: 282
diff changeset
   197
  | |
285
691cb55358b0 obsolete: do not obsolete rebase --detach nullmerge revs
Patrick Mezard <patrick@mezard.eu>
parents: 283
diff changeset
   198
  +---o  8:a7773ffa7edc@default(draft) Collapsed revision
283
8d1a8eeb5a84 test-obsolete-rebase.t: test --abort and --continue
Patrick Mezard <patrick@mezard.eu>
parents: 282
diff changeset
   199
  | |
385
cdcdedc532b7 obsolete: Stop turning obsolete secret changesets secret
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 346
diff changeset
   200
  | | x  7:03f31481307a@default(draft) changec
283
8d1a8eeb5a84 test-obsolete-rebase.t: test --abort and --continue
Patrick Mezard <patrick@mezard.eu>
parents: 282
diff changeset
   201
  | | |
385
cdcdedc532b7 obsolete: Stop turning obsolete secret changesets secret
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 346
diff changeset
   202
  | | x  6:076e9b2ffbe1@default(draft) addc
285
691cb55358b0 obsolete: do not obsolete rebase --detach nullmerge revs
Patrick Mezard <patrick@mezard.eu>
parents: 283
diff changeset
   203
  | |/
385
cdcdedc532b7 obsolete: Stop turning obsolete secret changesets secret
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 346
diff changeset
   204
  | | x  5:4e322f7ce8e3@foo(draft) changea
283
8d1a8eeb5a84 test-obsolete-rebase.t: test --abort and --continue
Patrick Mezard <patrick@mezard.eu>
parents: 282
diff changeset
   205
  | |/
285
691cb55358b0 obsolete: do not obsolete rebase --detach nullmerge revs
Patrick Mezard <patrick@mezard.eu>
parents: 283
diff changeset
   206
  +---o  4:9c5494949763@default(draft) adde
283
8d1a8eeb5a84 test-obsolete-rebase.t: test --abort and --continue
Patrick Mezard <patrick@mezard.eu>
parents: 282
diff changeset
   207
  | |
385
cdcdedc532b7 obsolete: Stop turning obsolete secret changesets secret
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 346
diff changeset
   208
  | | x  3:98e4a024635e@default(draft) adde
285
691cb55358b0 obsolete: do not obsolete rebase --detach nullmerge revs
Patrick Mezard <patrick@mezard.eu>
parents: 283
diff changeset
   209
  | | |
691cb55358b0 obsolete: do not obsolete rebase --detach nullmerge revs
Patrick Mezard <patrick@mezard.eu>
parents: 283
diff changeset
   210
  | | o  2:102a90ea7b4a@default(draft) addb
283
8d1a8eeb5a84 test-obsolete-rebase.t: test --abort and --continue
Patrick Mezard <patrick@mezard.eu>
parents: 282
diff changeset
   211
  | |/
8d1a8eeb5a84 test-obsolete-rebase.t: test --abort and --continue
Patrick Mezard <patrick@mezard.eu>
parents: 282
diff changeset
   212
  o |  1:540395c44225@default(draft) changea
8d1a8eeb5a84 test-obsolete-rebase.t: test --abort and --continue
Patrick Mezard <patrick@mezard.eu>
parents: 282
diff changeset
   213
  |/
8d1a8eeb5a84 test-obsolete-rebase.t: test --abort and --continue
Patrick Mezard <patrick@mezard.eu>
parents: 282
diff changeset
   214
  o  0:07f494440405@default(draft) adda
8d1a8eeb5a84 test-obsolete-rebase.t: test --abort and --continue
Patrick Mezard <patrick@mezard.eu>
parents: 282
diff changeset
   215
  
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 385
diff changeset
   216
  $ hg debugobsolete > ../successors.new
283
8d1a8eeb5a84 test-obsolete-rebase.t: test --abort and --continue
Patrick Mezard <patrick@mezard.eu>
parents: 282
diff changeset
   217
  $ diff -u ../successors.old ../successors.new
8d1a8eeb5a84 test-obsolete-rebase.t: test --abort and --continue
Patrick Mezard <patrick@mezard.eu>
parents: 282
diff changeset
   218
  --- ../successors.old* (glob)
8d1a8eeb5a84 test-obsolete-rebase.t: test --abort and --continue
Patrick Mezard <patrick@mezard.eu>
parents: 282
diff changeset
   219
  +++ ../successors.new* (glob)
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 385
diff changeset
   220
  @@ -2,3 +2,5 @@
455
f46a41006136 obsolete: simplify rebase wrapping code and change relation creation
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 444
diff changeset
   221
   4e322f7ce8e3e4203950eac9ece27bf7e45ffa6c 540395c442253af3b991be882b539e7e198b5808 0 {'date': '* *', 'user': 'test'} (glob)
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 385
diff changeset
   222
   076e9b2ffbe11c7bcb9ee97f5c0c8b88a1a10b93 a7773ffa7edcfac27b5dcdb2d5c1036e15a49861 0 {'date': '* *', 'user': 'test'} (glob)
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 385
diff changeset
   223
   03f31481307aaf5275d07ec28c1c59931759ccd2 a7773ffa7edcfac27b5dcdb2d5c1036e15a49861 0 {'date': '* *', 'user': 'test'} (glob)
455
f46a41006136 obsolete: simplify rebase wrapping code and change relation creation
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 444
diff changeset
   224
  +a31943eabc4327df16f9eca71bf7779c32f815f7 03f165c84ea8889fc35a64a392caa7a0084dd212 0 {'date': '* *', 'user': 'test'} (glob)
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 385
diff changeset
   225
  +4b9d80f48523e296f4402cc8e37236b768dfb981 1951ead9710803dbf117e95901954d5ed717f80b 0 {'date': '* *', 'user': 'test'} (glob)
283
8d1a8eeb5a84 test-obsolete-rebase.t: test --abort and --continue
Patrick Mezard <patrick@mezard.eu>
parents: 282
diff changeset
   226
  [1]