tests/test-unstability-resolution-result.t
author Martin von Zweigbergk <martinvonz@google.com>
Mon, 11 Mar 2019 23:57:12 -0700
changeset 4500 cfcb7eedc666
parent 4490 7a5c6109ee84
child 4516 f54bb6eaf5e6
child 4576 96ce1030d2fb
permissions -rw-r--r--
evolve: use merge.update() for resolving phase divergence Iterating over the manifest when tree manifests and narrowness is in play produces entries for paths outside the narrowspec that represent trees. For example, if the tests/ directory of the hg repo was not in the narrowspec (and the hg repo was using tree manifests, which it doesn't), then there would be a "tests/" entry in the manifest. The merge code deals with some of these cases. For example, it's valid to do a merge if only the local side changes directories outside the narrowspec. That allows rebasing a local commit onto a public commit that had changes to the excluded paths to work. However, _resolvephasedivergent() was iterating of the manifests, which resulted in crashes for some of our users when they tried to resolve phase-divergent commits (actually content-divergent commits that became phase-divergent after the intermediate rebase). We can fix that by relying on merge.update(), since that already handles this case.
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
4a039a8c1cf3 stabilize: --continue support !!!
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 444
diff changeset
    69
  $ ls
4a039a8c1cf3 stabilize: --continue support !!!
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 444
diff changeset
    70
  a
4a039a8c1cf3 stabilize: --continue support !!!
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 444
diff changeset
    71
  b
4a039a8c1cf3 stabilize: --continue support !!!
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 444
diff changeset
    72
  $ hg pdiff a
4a039a8c1cf3 stabilize: --continue support !!!
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 444
diff changeset
    73
  diff -r 07f494440405 a
3559
d166b3dc5e8a tests: do not glob out fixed dates
Martin von Zweigbergk <martinvonz@google.com>
parents: 3494
diff changeset
    74
  --- 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
    75
  +++ 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
    76
  @@ -1,1 +1,2 @@
4a039a8c1cf3 stabilize: --continue support !!!
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 444
diff changeset
    77
   a
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
  $ echo 'newer a' >> a
4a039a8c1cf3 stabilize: --continue support !!!
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 444
diff changeset
    80
  $ hg ci -m 'newer a'
4a039a8c1cf3 stabilize: --continue support !!!
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 444
diff changeset
    81
  $ hg gdown
895
17ac69db9329 evolve: deprecate gup and gdown aliases
Olle Lundberg <geek@nerd.sh>
parents: 803
diff changeset
    82
  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
    83
  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
    84
  [3] changea
465
4a039a8c1cf3 stabilize: --continue support !!!
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 444
diff changeset
    85
  $ echo 'a' > a
4a039a8c1cf3 stabilize: --continue support !!!
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 444
diff changeset
    86
  $ hg amend
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
    87
  1 new orphan changesets
492
7ecd41520dae rename `stabilize` to `evolve`
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 491
diff changeset
    88
  $ hg evolve
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
    89
  move:[4] newer a
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
    90
  atop:[5] changea
465
4a039a8c1cf3 stabilize: --continue support !!!
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 444
diff changeset
    91
  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
    92
  warning: conflicts while merging a! (edit, then use 'hg resolve --mark')
3852
629558d09898 evolve: raise error.InterventionRequired instead of Abort when conflicts
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3846
diff changeset
    93
  fix conflicts and see `hg help evolve.interrupted`
629558d09898 evolve: raise error.InterventionRequired instead of Abort when conflicts
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3846
diff changeset
    94
  [1]
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
    95
  $ hg revert -r "orphan()" a
465
4a039a8c1cf3 stabilize: --continue support !!!
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 444
diff changeset
    96
  $ hg diff
742
760d01a549a6 amend: use core mechanism for amend
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 726
diff changeset
    97
  diff -r 66719795a494 a
3559
d166b3dc5e8a tests: do not glob out fixed dates
Martin von Zweigbergk <martinvonz@google.com>
parents: 3494
diff changeset
    98
  --- 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
    99
  +++ 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
   100
  @@ -1,1 +1,3 @@
4a039a8c1cf3 stabilize: --continue support !!!
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 444
diff changeset
   101
   a
4a039a8c1cf3 stabilize: --continue support !!!
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 444
diff changeset
   102
  +a
4a039a8c1cf3 stabilize: --continue support !!!
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 444
diff changeset
   103
  +newer a
492
7ecd41520dae rename `stabilize` to `evolve`
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 491
diff changeset
   104
  $ hg evolve --continue
1737
5383671ef612 evolve: fix test breaks related to double->single quote changes
Kostia Balytskyi <ikostia@fb.com>
parents: 1735
diff changeset
   105
  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
   106
  [255]
4a039a8c1cf3 stabilize: --continue support !!!
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 444
diff changeset
   107
  $ 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
   108
  (no more unresolved files)
3472
05bd493d496d evolve: add evolve info to cmdutil.afterresolvedstates
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3453
diff changeset
   109
  continue: hg evolve --continue
492
7ecd41520dae rename `stabilize` to `evolve`
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 491
diff changeset
   110
  $ hg evolve --continue
3385
823031b51d81 evolve: don't use graftstate for continuing `hg evolve`
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3374
diff changeset
   111
  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
   112
  working directory is now at 1cf0aacfd363
469
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   113
4470
046dd7718845 test: apply unstability resolution to `test-unstability-resolution-result.t`
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4454
diff changeset
   114
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
   115
============================================================
484
20e2f2dd71f1 stabilize: conflicting changeset are considered if "."
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 469
diff changeset
   116
984
b286f77d680c tests: fix grammar, spelling, punctuation in comments
Greg Ward <greg@gerg.ca>
parents: 964
diff changeset
   117
(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
   118
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   119
  $ glog
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
   120
  @  6:1cf0aacfd363@default(draft) bk:[] newer a
469
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   121
  |
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
   122
  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
   123
  |
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   124
  o  0:07f494440405@default(draft) bk:[] adda
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   125
  
4470
046dd7718845 test: apply unstability resolution to `test-unstability-resolution-result.t`
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4454
diff changeset
   126
469
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   127
Add another commit
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   128
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   129
  $ hg gdown
895
17ac69db9329 evolve: deprecate gup and gdown aliases
Olle Lundberg <geek@nerd.sh>
parents: 803
diff changeset
   130
  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
   131
  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
   132
  [5] changea
469
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   133
  $ echo 'c' > c
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   134
  $ hg add c
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   135
  $ hg commit -m 'add c'
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   136
  created new head
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   137
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   138
Get a successors of 8 on it
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   139
4053
ecbf61d90807 pick: replace `hg grab` invocation in test with `hg pick`
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4049
diff changeset
   140
  $ 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
   141
  picking 6:1cf0aacfd363 "newer a"
469
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   142
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   143
Add real change to the successors
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
  $ echo 'babar' >> a
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   146
  $ hg amend
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   147
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   148
Make precursors public
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   149
2929
06844693bb21 tests: update after removing of redundant amend commit
Boris Feld <boris.feld@octobus.net>
parents: 2858
diff changeset
   150
  $ 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
   151
  1 new phase-divergent changesets
469
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   152
  $ glog
3453
32ed5b6fadd3 grab: add a command to grab a commit and update to it
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3432
diff changeset
   153
  @  9:99c21c89bcef@default(draft) bk:[] newer a
469
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   154
  |
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
   155
  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
   156
  |
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
   157
  | 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
   158
  |/
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
   159
  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
   160
  |
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   161
  o  0:07f494440405@default(public) bk:[] adda
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
984
b286f77d680c tests: fix grammar, spelling, punctuation in comments
Greg Ward <greg@gerg.ca>
parents: 964
diff changeset
   164
Stabilize!
469
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   165
3155
b237c1c6dc19 evolve: rename --phasedivergent flag to --phase-divergent
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3154
diff changeset
   166
  $ 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
   167
  recreate:[9] newer a
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
   168
  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
   169
  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
   170
  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
   171
  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
   172
  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
   173
  $ 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
   174
  recreate:[9] newer a
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
   175
  atop:[6] newer a
1390
03f202bed47f evolve: fix default value for --confirm
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1375
diff changeset
   176
  perform evolve? [Ny] n
03f202bed47f evolve: fix default value for --confirm
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1375
diff changeset
   177
  abort: evolve aborted by user
03f202bed47f evolve: fix default value for --confirm
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1375
diff changeset
   178
  [255]
3155
b237c1c6dc19 evolve: rename --phasedivergent flag to --phase-divergent
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3154
diff changeset
   179
  $ 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
   180
  recreate:[9] newer a
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
   181
  atop:[6] newer a
1047
d830377bf186 evolve: adds a --confirm option
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1032
diff changeset
   182
  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
   183
  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
   184
  committed as 8fc63fe1f297
71fbb679e311 evolve: use the new rebased changeset to resolve phase-divergence
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3621
diff changeset
   185
  working directory is now at 8fc63fe1f297
469
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   186
  $ glog
3623
71fbb679e311 evolve: use the new rebased changeset to resolve phase-divergence
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3621
diff changeset
   187
  @  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
   188
  |
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
   189
  | 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
   190
  | |
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
   191
  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
   192
  |/
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
   193
  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
   194
  |
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   195
  o  0:07f494440405@default(public) bk:[] adda
abeb17a9e313 stabilize: handle latecomer
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 465
diff changeset
   196
  
3621
db3ec5f79ab9 tests: add one more test case about handling of phase-divergence by evolve
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3562
diff changeset
   197
  $ 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
   198
  # 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
   199
  # 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
   200
  # 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
   201
  #      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
   202
  # 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
   203
  # 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
   204
  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
   205
  
db3ec5f79ab9 tests: add one more test case about handling of phase-divergence by evolve
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3562
diff changeset
   206
  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
   207
  
3623
71fbb679e311 evolve: use the new rebased changeset to resolve phase-divergence
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3621
diff changeset
   208
  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
   209
  --- 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
   210
  +++ 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
   211
  @@ -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
   212
   a
db3ec5f79ab9 tests: add one more test case about handling of phase-divergence by evolve
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3562
diff changeset
   213
   a
db3ec5f79ab9 tests: add one more test case about handling of phase-divergence by evolve
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3562
diff changeset
   214
   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
   215
  +babar