tests/test-unstability-resolution-result.t
author Martin von Zweigbergk <martinvonz@google.com>
Mon, 09 Dec 2019 11:09:11 -0800
changeset 5343 ebfd0d875600
parent 5317 baa0b481eec5
child 5359 01bcd39c432c
permissions -rw-r--r--
evolve: handle relocation during divergence resolution producing no changes When resolving divergence and the two divergent commits have different parents, we start by rebasing one of them to have the same parent as the other. That step can result in no changes to commit. When it does, we would crash with a TypeError before this patch. This patch fixes it by instead creating an empty commit in that scenario. The existing code then continues to attempt to merge it, which produces no changes, and no commit is created on top. The other side of the divergence is marked as successor as usual, so orphans from the side that became empty will be evolved to the right place (see test).
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
4470
046dd7718845 test: apply unstability resolution to `test-unstability-resolution-result.t`
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4454
diff changeset
     1
=================================================================
046dd7718845 test: apply unstability resolution to `test-unstability-resolution-result.t`
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4454
diff changeset
     2
Test automatic unstability resolution for multiple advanced cases
046dd7718845 test: apply unstability resolution to `test-unstability-resolution-result.t`
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4454
diff changeset
     3
=================================================================
046dd7718845 test: apply unstability resolution to `test-unstability-resolution-result.t`
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4454
diff changeset
     4
046dd7718845 test: apply unstability resolution to `test-unstability-resolution-result.t`
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4454
diff changeset
     5
There are dedicated test case for each instability, but this file check some
046dd7718845 test: apply unstability resolution to `test-unstability-resolution-result.t`
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4454
diff changeset
     6
basic case for each type.
046dd7718845 test: apply unstability resolution to `test-unstability-resolution-result.t`
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4454
diff changeset
     7
046dd7718845 test: apply unstability resolution to `test-unstability-resolution-result.t`
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4454
diff changeset
     8
XXX dispatching each these test case in appropriate file would make sense.
046dd7718845 test: apply unstability resolution to `test-unstability-resolution-result.t`
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4454
diff changeset
     9
284
88a851a54f26 evolve: fix relocate() with removed revision
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    10
  $ cat >> $HGRCPATH <<EOF
88a851a54f26 evolve: fix relocate() with removed revision
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    11
  > [defaults]
88a851a54f26 evolve: fix relocate() with removed revision
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    12
  > amend=-d "0 0"
88a851a54f26 evolve: fix relocate() with removed revision
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    13
  > [extensions]
88a851a54f26 evolve: fix relocate() with removed revision
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    14
  > hgext.rebase=
88a851a54f26 evolve: fix relocate() with removed revision
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    15
  > EOF
1806
9f42f819267b evolve: move the extensions to 'hgext3rd'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1756
diff changeset
    16
  $ echo "evolve=$(echo $(dirname $TESTDIR))/hgext3rd/evolve/" >> $HGRCPATH
284
88a851a54f26 evolve: fix relocate() with removed revision
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    17
88a851a54f26 evolve: fix relocate() with removed revision
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    18
  $ glog() {
2776
4dd84054ebbb test: remove reference to the graphlog extension
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 2587
diff changeset
    19
  >   hg log -G --template \
284
88a851a54f26 evolve: fix relocate() with removed revision
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    20
  >     '{rev}:{node|short}@{branch}({phase}) bk:[{bookmarks}] {desc|firstline}\n' "$@"
88a851a54f26 evolve: fix relocate() with removed revision
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    21
  > }
88a851a54f26 evolve: fix relocate() with removed revision
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    22
4470
046dd7718845 test: apply unstability resolution to `test-unstability-resolution-result.t`
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4454
diff changeset
    23
Test evolve removing the orphan changeset being evolved
284
88a851a54f26 evolve: fix relocate() with removed revision
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    24
88a851a54f26 evolve: fix relocate() with removed revision
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    25
  $ hg init empty
88a851a54f26 evolve: fix relocate() with removed revision
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    26
  $ cd empty
88a851a54f26 evolve: fix relocate() with removed revision
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    27
  $ echo a > a
88a851a54f26 evolve: fix relocate() with removed revision
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    28
  $ hg ci -Am adda a
88a851a54f26 evolve: fix relocate() with removed revision
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    29
  $ echo b > b
88a851a54f26 evolve: fix relocate() with removed revision
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    30
  $ hg ci -Am addb b
88a851a54f26 evolve: fix relocate() with removed revision
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    31
  $ echo a >> a
88a851a54f26 evolve: fix relocate() with removed revision
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    32
  $ hg ci -m changea
88a851a54f26 evolve: fix relocate() with removed revision
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    33
  $ hg bookmark changea
88a851a54f26 evolve: fix relocate() with removed revision
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    34
  $ hg up 1
88a851a54f26 evolve: fix relocate() with removed revision
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    35
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
1026
35adaf02b777 test: apply message changes introduced by mercurial 3.1
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 950
diff changeset
    36
  (leaving bookmark changea)
284
88a851a54f26 evolve: fix relocate() with removed revision
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    37
  $ echo a >> a
88a851a54f26 evolve: fix relocate() with removed revision
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    38
  $ hg amend -m changea
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
    39
  1 new orphan changesets
1047
d830377bf186 evolve: adds a --confirm option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1032
diff changeset
    40
  $ hg evolve -v --confirm
284
88a851a54f26 evolve: fix relocate() with removed revision
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    41
  move:[2] changea
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
    42
  atop:[3] changea
1390
03f202bed47f evolve: fix default value for --confirm
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1375
diff changeset
    43
  perform evolve? [Ny] n
03f202bed47f evolve: fix default value for --confirm
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1375
diff changeset
    44
  abort: evolve aborted by user
03f202bed47f evolve: fix default value for --confirm
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1375
diff changeset
    45
  [255]
03f202bed47f evolve: fix default value for --confirm
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1375
diff changeset
    46
  $ echo y | hg evolve -v --confirm --config ui.interactive=True
03f202bed47f evolve: fix default value for --confirm
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1375
diff changeset
    47
  move:[2] changea
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
    48
  atop:[3] changea
1047
d830377bf186 evolve: adds a --confirm option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1032
diff changeset
    49
  perform evolve? [Ny] y
742
760d01a549a6 amend: use core mechanism for amend
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 726
diff changeset
    50
  hg rebase -r cce2c55b8965 -d fb9d051ec0a4
284
88a851a54f26 evolve: fix relocate() with removed revision
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    51
  resolving manifests
3636
92a2d3217de9 evolve: show a message when evolution leads to no changes to commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3623
diff changeset
    52
  evolution of 2:cce2c55b8965 created no changes to commit
92a2d3217de9 evolve: show a message when evolution leads to no changes to commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3623
diff changeset
    53
284
88a851a54f26 evolve: fix relocate() with removed revision
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    54
  $ glog --hidden
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
    55
  @  3:fb9d051ec0a4@default(draft) bk:[changea] changea
284
88a851a54f26 evolve: fix relocate() with removed revision
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    56
  |
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
    57
  | x  2:cce2c55b8965@default(draft) bk:[] changea
284
88a851a54f26 evolve: fix relocate() with removed revision
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    58
  | |
385
cdcdedc532b7 obsolete: Stop turning obsolete secret changesets secret
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 346
diff changeset
    59
  | x  1:102a90ea7b4a@default(draft) bk:[] addb
284
88a851a54f26 evolve: fix relocate() with removed revision
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    60
  |/
88a851a54f26 evolve: fix relocate() with removed revision
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    61
  o  0:07f494440405@default(draft) bk:[] adda
88a851a54f26 evolve: fix relocate() with removed revision
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    62
  
441
d702f0d26c6a obsolete: remove debugsuccessors
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 385
diff changeset
    63
  $ hg debugobsolete
3559
d166b3dc5e8a tests: do not glob out fixed dates
Martin von Zweigbergk <martinvonz@google.com>
parents: 3494
diff changeset
    64
  102a90ea7b4a3361e4082ed620918c261189a36a fb9d051ec0a450a4aa2ffc8c324979832ef88065 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '9', 'operation': 'amend', 'user': 'test'}
3562
fe16284cd95a evolve: include "operation" metadata in obsmarkers
Martin von Zweigbergk <martinvonz@google.com>
parents: 3559
diff changeset
    65
  cce2c55b896511e0b6e04173c9450ba822ebc740 0 {102a90ea7b4a3361e4082ed620918c261189a36a} (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '0', 'operation': 'evolve', 'user': 'test'}
465
4a039a8c1cf3 stabilize: --continue support !!!
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 444
diff changeset
    66
4470
046dd7718845 test: apply unstability resolution to `test-unstability-resolution-result.t`
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4454
diff changeset
    67
Test evolve of orphan that run into conflict
465
4a039a8c1cf3 stabilize: --continue support !!!
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 444
diff changeset
    68
5317
baa0b481eec5 tests: deal with "ls" vs "ls -A" difference on 2BSD derived systems
Joerg Sonnenberger <joerg@bec.de>
parents: 5293
diff changeset
    69
  $ ls -A
baa0b481eec5 tests: deal with "ls" vs "ls -A" difference on 2BSD derived systems
Joerg Sonnenberger <joerg@bec.de>
parents: 5293
diff changeset
    70
  .hg
465
4a039a8c1cf3 stabilize: --continue support !!!
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 444
diff changeset
    71
  a
4a039a8c1cf3 stabilize: --continue support !!!
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 444
diff changeset
    72
  b
4a039a8c1cf3 stabilize: --continue support !!!
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 444
diff changeset
    73
  $ hg pdiff a
4a039a8c1cf3 stabilize: --continue support !!!
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 444
diff changeset
    74
  diff -r 07f494440405 a
3559
d166b3dc5e8a tests: do not glob out fixed dates
Martin von Zweigbergk <martinvonz@google.com>
parents: 3494
diff changeset
    75
  --- a/a	Thu Jan 01 00:00:00 1970 +0000
d166b3dc5e8a tests: do not glob out fixed dates
Martin von Zweigbergk <martinvonz@google.com>
parents: 3494
diff changeset
    76
  +++ b/a	Thu Jan 01 00:00:00 1970 +0000
465
4a039a8c1cf3 stabilize: --continue support !!!
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 444
diff changeset
    77
  @@ -1,1 +1,2 @@
4a039a8c1cf3 stabilize: --continue support !!!
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 444
diff changeset
    78
   a
4a039a8c1cf3 stabilize: --continue support !!!
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 444
diff changeset
    79
  +a
4a039a8c1cf3 stabilize: --continue support !!!
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 444
diff changeset
    80
  $ echo 'newer a' >> a
4a039a8c1cf3 stabilize: --continue support !!!
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 444
diff changeset
    81
  $ hg ci -m 'newer a'
4a039a8c1cf3 stabilize: --continue support !!!
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 444
diff changeset
    82
  $ hg gdown
895
17ac69db9329 evolve: deprecate gup and gdown aliases
Olle Lundberg <geek@nerd.sh>
parents: 803
diff changeset
    83
  gdown have been deprecated in favor of previous
465
4a039a8c1cf3 stabilize: --continue support !!!
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 444
diff changeset
    84
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
    85
  [3] changea
465
4a039a8c1cf3 stabilize: --continue support !!!
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 444
diff changeset
    86
  $ echo 'a' > a
4a039a8c1cf3 stabilize: --continue support !!!
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 444
diff changeset
    87
  $ hg amend
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
    88
  1 new orphan changesets
4576
96ce1030d2fb tests: add --update to hg evolve to reduce test changes for the next patch
Anton Shestakov <av6@dwimlabs.net>
parents: 4490
diff changeset
    89
  $ hg evolve --update
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
    90
  move:[4] newer a
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
    91
  atop:[5] changea
465
4a039a8c1cf3 stabilize: --continue support !!!
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 444
diff changeset
    92
  merging a
1516
c4f8a2916e43 tests: run test with 3.6 and apply test change
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1453
diff changeset
    93
  warning: conflicts while merging a! (edit, then use 'hg resolve --mark')
4676
b6c819facbe8 evolvecmd: the proper way to deal with conflicts is to resolve them
Anton Shestakov <av6@dwimlabs.net>
parents: 4576
diff changeset
    94
  unresolved merge conflicts
b6c819facbe8 evolvecmd: the proper way to deal with conflicts is to resolve them
Anton Shestakov <av6@dwimlabs.net>
parents: 4576
diff changeset
    95
  (see 'hg help evolve.interrupted')
3852
629558d09898 evolve: raise error.InterventionRequired instead of Abort when conflicts
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3846
diff changeset
    96
  [1]
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
    97
  $ hg revert -r "orphan()" a
465
4a039a8c1cf3 stabilize: --continue support !!!
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 444
diff changeset
    98
  $ hg diff
742
760d01a549a6 amend: use core mechanism for amend
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 726
diff changeset
    99
  diff -r 66719795a494 a
3559
d166b3dc5e8a tests: do not glob out fixed dates
Martin von Zweigbergk <martinvonz@google.com>
parents: 3494
diff changeset
   100
  --- a/a	Thu Jan 01 00:00:00 1970 +0000
d166b3dc5e8a tests: do not glob out fixed dates
Martin von Zweigbergk <martinvonz@google.com>
parents: 3494
diff changeset
   101
  +++ b/a	Thu Jan 01 00:00:00 1970 +0000
465
4a039a8c1cf3 stabilize: --continue support !!!
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 444
diff changeset
   102
  @@ -1,1 +1,3 @@
4a039a8c1cf3 stabilize: --continue support !!!
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 444
diff changeset
   103
   a
4a039a8c1cf3 stabilize: --continue support !!!
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 444
diff changeset
   104
  +a
4a039a8c1cf3 stabilize: --continue support !!!
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 444
diff changeset
   105
  +newer a
492
7ecd41520dae rename `stabilize` to `evolve`
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 491
diff changeset
   106
  $ hg evolve --continue
1737
5383671ef612 evolve: fix test breaks related to double->single quote changes
Kostia Balytskyi <ikostia@fb.com>
parents: 1735
diff changeset
   107
  abort: unresolved merge conflicts (see 'hg help resolve')
465
4a039a8c1cf3 stabilize: --continue support !!!
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 444
diff changeset
   108
  [255]
4a039a8c1cf3 stabilize: --continue support !!!
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 444
diff changeset
   109
  $ hg resolve -m a
1026
35adaf02b777 test: apply message changes introduced by mercurial 3.1
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 950
diff changeset
   110
  (no more unresolved files)
3472
05bd493d496d evolve: add evolve info to cmdutil.afterresolvedstates
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3453
diff changeset
   111
  continue: hg evolve --continue
492
7ecd41520dae rename `stabilize` to `evolve`
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 491
diff changeset
   112
  $ hg evolve --continue
3385
823031b51d81 evolve: don't use graftstate for continuing `hg evolve`
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3374
diff changeset
   113
  evolving 4:3655f0f50885 "newer a"
3494
14cd04ff968e evolve: show the updated working directory after `hg evolve --continue`
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3472
diff changeset
   114
  working directory is now at 1cf0aacfd363
469
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   115
4470
046dd7718845 test: apply unstability resolution to `test-unstability-resolution-result.t`
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4454
diff changeset
   116
Stabilize phase-divergent changesets with a different parent
046dd7718845 test: apply unstability resolution to `test-unstability-resolution-result.t`
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4454
diff changeset
   117
============================================================
484
20e2f2dd71f1 stabilize: conflicting changeset are considered if "."
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 469
diff changeset
   118
984
b286f77d680c tests: fix grammar, spelling, punctuation in comments
Greg Ward <greg@gerg.ca>
parents: 964
diff changeset
   119
(the same-parent case is handled in test-evolve.t)
469
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   120
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   121
  $ glog
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
   122
  @  6:1cf0aacfd363@default(draft) bk:[] newer a
469
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   123
  |
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
   124
  o  5:66719795a494@default(draft) bk:[changea] changea
469
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   125
  |
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   126
  o  0:07f494440405@default(draft) bk:[] adda
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   127
  
4470
046dd7718845 test: apply unstability resolution to `test-unstability-resolution-result.t`
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4454
diff changeset
   128
469
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   129
Add another commit
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   130
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   131
  $ hg gdown
895
17ac69db9329 evolve: deprecate gup and gdown aliases
Olle Lundberg <geek@nerd.sh>
parents: 803
diff changeset
   132
  gdown have been deprecated in favor of previous
469
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   133
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
   134
  [5] changea
469
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   135
  $ echo 'c' > c
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   136
  $ hg add c
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   137
  $ hg commit -m 'add c'
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   138
  created new head
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   139
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   140
Get a successors of 8 on it
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   141
4053
ecbf61d90807 pick: replace `hg grab` invocation in test with `hg pick`
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4049
diff changeset
   142
  $ hg pick 1cf0aacfd363
4049
25981fae92f9 pick: update command output to mention pick instead of grab
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3852
diff changeset
   143
  picking 6:1cf0aacfd363 "newer a"
469
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   144
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   145
Add real change to the successors
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   146
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   147
  $ echo 'babar' >> a
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   148
  $ hg amend
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   149
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   150
Make precursors public
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   151
2929
06844693bb21 tests: update after removing of redundant amend commit
Boris Feld <boris.feld@octobus.net>
parents: 2858
diff changeset
   152
  $ hg phase --hidden --public 1cf0aacfd363
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
   153
  1 new phase-divergent changesets
469
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   154
  $ glog
3453
32ed5b6fadd3 grab: add a command to grab a commit and update to it
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3432
diff changeset
   155
  @  9:99c21c89bcef@default(draft) bk:[] newer a
469
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   156
  |
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
   157
  o  7:7bc2f5967f5e@default(draft) bk:[] add c
469
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   158
  |
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
   159
  | o  6:1cf0aacfd363@default(public) bk:[] newer a
469
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   160
  |/
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
   161
  o  5:66719795a494@default(public) bk:[changea] changea
469
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   162
  |
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   163
  o  0:07f494440405@default(public) bk:[] adda
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   164
  
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   165
984
b286f77d680c tests: fix grammar, spelling, punctuation in comments
Greg Ward <greg@gerg.ca>
parents: 964
diff changeset
   166
Stabilize!
469
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   167
3155
b237c1c6dc19 evolve: rename --phasedivergent flag to --phase-divergent
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3154
diff changeset
   168
  $ hg evolve --any --dry-run --phase-divergent
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
   169
  recreate:[9] newer a
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
   170
  atop:[6] newer a
3453
32ed5b6fadd3 grab: add a command to grab a commit and update to it
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3432
diff changeset
   171
  hg rebase --rev 99c21c89bcef --dest 66719795a494;
742
760d01a549a6 amend: use core mechanism for amend
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 726
diff changeset
   172
  hg update 1cf0aacfd363;
3453
32ed5b6fadd3 grab: add a command to grab a commit and update to it
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3432
diff changeset
   173
  hg revert --all --rev 99c21c89bcef;
32ed5b6fadd3 grab: add a command to grab a commit and update to it
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3432
diff changeset
   174
  hg commit --msg "phase-divergent update to 99c21c89bcef"
3155
b237c1c6dc19 evolve: rename --phasedivergent flag to --phase-divergent
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3154
diff changeset
   175
  $ hg evolve --any --confirm --phase-divergent
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
   176
  recreate:[9] newer a
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
   177
  atop:[6] newer a
1390
03f202bed47f evolve: fix default value for --confirm
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1375
diff changeset
   178
  perform evolve? [Ny] n
03f202bed47f evolve: fix default value for --confirm
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1375
diff changeset
   179
  abort: evolve aborted by user
03f202bed47f evolve: fix default value for --confirm
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1375
diff changeset
   180
  [255]
3155
b237c1c6dc19 evolve: rename --phasedivergent flag to --phase-divergent
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3154
diff changeset
   181
  $ echo y | hg evolve --any --confirm --config ui.interactive=True --phase-divergent
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
   182
  recreate:[9] newer a
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
   183
  atop:[6] newer a
1047
d830377bf186 evolve: adds a --confirm option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1032
diff changeset
   184
  perform evolve? [Ny] y
742
760d01a549a6 amend: use core mechanism for amend
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 726
diff changeset
   185
  rebasing to destination parent: 66719795a494
3623
71fbb679e311 evolve: use the new rebased changeset to resolve phase-divergence
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3621
diff changeset
   186
  committed as 8fc63fe1f297
71fbb679e311 evolve: use the new rebased changeset to resolve phase-divergence
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3621
diff changeset
   187
  working directory is now at 8fc63fe1f297
469
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   188
  $ glog
3623
71fbb679e311 evolve: use the new rebased changeset to resolve phase-divergence
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3621
diff changeset
   189
  @  11:8fc63fe1f297@default(draft) bk:[] phase-divergent update to 1cf0aacfd363:
469
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   190
  |
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
   191
  | o  7:7bc2f5967f5e@default(draft) bk:[] add c
469
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   192
  | |
5293
4da1d21231ae tests: update output to match 1b8fd4af3318 in core
Anton Shestakov <av6@dwimlabs.net>
parents: 4676
diff changeset
   193
  % |  6:1cf0aacfd363@default(public) bk:[] newer a
469
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   194
  |/
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
   195
  o  5:66719795a494@default(public) bk:[changea] changea
469
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   196
  |
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   197
  o  0:07f494440405@default(public) bk:[] adda
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   198
  
3621
db3ec5f79ab9 tests: add one more test case about handling of phase-divergence by evolve
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3562
diff changeset
   199
  $ hg exp
db3ec5f79ab9 tests: add one more test case about handling of phase-divergence by evolve
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3562
diff changeset
   200
  # HG changeset patch
db3ec5f79ab9 tests: add one more test case about handling of phase-divergence by evolve
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3562
diff changeset
   201
  # User test
db3ec5f79ab9 tests: add one more test case about handling of phase-divergence by evolve
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3562
diff changeset
   202
  # Date 0 0
db3ec5f79ab9 tests: add one more test case about handling of phase-divergence by evolve
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3562
diff changeset
   203
  #      Thu Jan 01 00:00:00 1970 +0000
3623
71fbb679e311 evolve: use the new rebased changeset to resolve phase-divergence
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3621
diff changeset
   204
  # Node ID 8fc63fe1f297f356d1156bbbbe865b9911efad74
3621
db3ec5f79ab9 tests: add one more test case about handling of phase-divergence by evolve
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3562
diff changeset
   205
  # Parent  1cf0aacfd36310b18e403e1594871187e0364a82
db3ec5f79ab9 tests: add one more test case about handling of phase-divergence by evolve
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3562
diff changeset
   206
  phase-divergent update to 1cf0aacfd363:
db3ec5f79ab9 tests: add one more test case about handling of phase-divergence by evolve
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3562
diff changeset
   207
  
db3ec5f79ab9 tests: add one more test case about handling of phase-divergence by evolve
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3562
diff changeset
   208
  newer a
db3ec5f79ab9 tests: add one more test case about handling of phase-divergence by evolve
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3562
diff changeset
   209
  
3623
71fbb679e311 evolve: use the new rebased changeset to resolve phase-divergence
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3621
diff changeset
   210
  diff -r 1cf0aacfd363 -r 8fc63fe1f297 a
3621
db3ec5f79ab9 tests: add one more test case about handling of phase-divergence by evolve
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3562
diff changeset
   211
  --- a/a	Thu Jan 01 00:00:00 1970 +0000
db3ec5f79ab9 tests: add one more test case about handling of phase-divergence by evolve
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3562
diff changeset
   212
  +++ b/a	Thu Jan 01 00:00:00 1970 +0000
db3ec5f79ab9 tests: add one more test case about handling of phase-divergence by evolve
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3562
diff changeset
   213
  @@ -1,3 +1,4 @@
db3ec5f79ab9 tests: add one more test case about handling of phase-divergence by evolve
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3562
diff changeset
   214
   a
db3ec5f79ab9 tests: add one more test case about handling of phase-divergence by evolve
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3562
diff changeset
   215
   a
db3ec5f79ab9 tests: add one more test case about handling of phase-divergence by evolve
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3562
diff changeset
   216
   newer a
db3ec5f79ab9 tests: add one more test case about handling of phase-divergence by evolve
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3562
diff changeset
   217
  +babar