tests/test-evolve-orphan-merge.t
author Sushil khanchi <sushilkhanchi97@gmail.com>
Sat, 23 Nov 2019 16:17:04 +0530
branchstable
changeset 4991 2928f35023a1
parent 4676 b6c819facbe8
child 4916 4101fab78314
child 5097 f0c18ad24273
child 5245 207427ed9302
permissions -rw-r--r--
evolve: make sure divergence resolution doesn't undo changes (issue6203) Before this patch, in content-divergence resolution logic if resolution parent is not the parent of any of the two divergent changesets then it could undo some changes introduced by previous revs (while resolving stack of content-divergent changesets) as demonstrated by the test added in previous patch. To solve this, what this patch doing is: if divergent cset has obsolete parent with a successor then first resolve the "orphan" instability of divergent cset by relocating, then perform the content-divergence resolution. After this change in logic, I found that it's kind of more correct as reflected by the changes in tests/test-evolve-content-divergent-corner-cases.t where it prevented creating conflicts while merging. Changes in tests/test-evolve-content-divergent-stack.t demonstrate the fixed behaviour. Next patches will be covering the `evolve --continue` case for the relocation of "divergent" cset.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
3528
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
     1
** Testing resolution of orphans by `hg evolve` when merges are involved **
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
     2
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
     3
  $ cat >> $HGRCPATH <<EOF
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
     4
  > [ui]
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
     5
  > interactive = True
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
     6
  > [alias]
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
     7
  > glog = log -GT "{rev}:{node|short} {desc}\n ({bookmarks}) {phase}"
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
     8
  > [extensions]
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
     9
  > rebase =
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    10
  > EOF
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    11
  $ echo "evolve=$(echo $(dirname $TESTDIR))/hgext3rd/evolve/" >> $HGRCPATH
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    12
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    13
Repo Setup
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    14
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    15
  $ hg init repo
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    16
  $ cd repo
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    17
  $ echo ".*\.orig" > .hgignore
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    18
  $ hg add .hgignore
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    19
  $ hg ci -m "added hgignore"
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    20
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    21
An orphan merge changeset with one of the parent obsoleted
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    22
==========================================================
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    23
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    24
1) When merging both the parents does not result in conflicts
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    25
-------------------------------------------------------------
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    26
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    27
  $ echo foo > a
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    28
  $ hg ci -Aqm "added a"
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    29
  $ hg up .^
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    30
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    31
  $ echo foo > b
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    32
  $ hg ci -Aqm "added b"
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    33
  $ hg merge
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    34
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    35
  (branch merge, don't forget to commit)
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    36
  $ hg ci -m "merging a and b"
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    37
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    38
  $ hg glog
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    39
  @    3:3b2b6f4652ee merging a and b
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    40
  |\    () draft
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    41
  | o  2:d76850646258 added b
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    42
  | |   () draft
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    43
  o |  1:c7586e2a9264 added a
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    44
  |/    () draft
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    45
  o  0:8fa14d15e168 added hgignore
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    46
      () draft
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    47
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    48
Testing with obsoleting the second parent
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    49
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    50
  $ hg up d76850646258
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    51
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    52
  $ echo bar > b
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    53
  $ hg amend
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    54
  1 new orphan changesets
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    55
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    56
  $ hg glog
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    57
  @  4:64370c9805e7 added b
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    58
  |   () draft
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    59
  | *    3:3b2b6f4652ee merging a and b
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    60
  | |\    () draft
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    61
  +---x  2:d76850646258 added b
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    62
  | |     () draft
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    63
  | o  1:c7586e2a9264 added a
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    64
  |/    () draft
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    65
  o  0:8fa14d15e168 added hgignore
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    66
      () draft
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    67
4576
96ce1030d2fb tests: add --update to hg evolve to reduce test changes for the next patch
Anton Shestakov <av6@dwimlabs.net>
parents: 4122
diff changeset
    68
  $ hg evolve --all --update
3528
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    69
  move:[3] merging a and b
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    70
  atop:[4] added b
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    71
  working directory is now at 91fd62122a4b
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    72
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    73
  $ hg glog
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    74
  @    5:91fd62122a4b merging a and b
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    75
  |\    () draft
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    76
  | o  4:64370c9805e7 added b
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    77
  | |   () draft
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    78
  o |  1:c7586e2a9264 added a
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    79
  |/    () draft
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    80
  o  0:8fa14d15e168 added hgignore
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    81
      () draft
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    82
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    83
  $ hg parents
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    84
  changeset:   5:91fd62122a4b
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    85
  tag:         tip
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    86
  parent:      4:64370c9805e7
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    87
  parent:      1:c7586e2a9264
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    88
  user:        test
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    89
  date:        Thu Jan 01 00:00:00 1970 +0000
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    90
  summary:     merging a and b
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    91
  
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    92
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    93
Testing with obsoleting the first parent
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    94
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    95
  $ hg up c7586e2a9264
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    96
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    97
  $ echo bar > a
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    98
  $ hg amend
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    99
  1 new orphan changesets
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   100
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   101
  $ hg glog
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   102
  @  6:3d41537b44ca added a
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   103
  |   () draft
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   104
  | *    5:91fd62122a4b merging a and b
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   105
  | |\    () draft
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   106
  +---o  4:64370c9805e7 added b
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   107
  | |     () draft
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   108
  | x  1:c7586e2a9264 added a
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   109
  |/    () draft
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   110
  o  0:8fa14d15e168 added hgignore
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   111
      () draft
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   112
4576
96ce1030d2fb tests: add --update to hg evolve to reduce test changes for the next patch
Anton Shestakov <av6@dwimlabs.net>
parents: 4122
diff changeset
   113
  $ hg evolve --all --update
3528
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   114
  move:[5] merging a and b
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   115
  atop:[6] added a
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   116
  working directory is now at 968d205ba4d8
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   117
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   118
  $ hg glog
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   119
  @    7:968d205ba4d8 merging a and b
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   120
  |\    () draft
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   121
  | o  6:3d41537b44ca added a
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   122
  | |   () draft
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   123
  o |  4:64370c9805e7 added b
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   124
  |/    () draft
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   125
  o  0:8fa14d15e168 added hgignore
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   126
      () draft
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   127
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   128
  $ hg parents
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   129
  changeset:   7:968d205ba4d8
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   130
  tag:         tip
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   131
  parent:      6:3d41537b44ca
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   132
  parent:      4:64370c9805e7
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   133
  user:        test
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   134
  date:        Thu Jan 01 00:00:00 1970 +0000
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   135
  summary:     merging a and b
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   136
  
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   137
2) When merging both the parents resulted in conflicts
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   138
------------------------------------------------------
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   139
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   140
  $ hg up 8fa14d15e168
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   141
  0 files updated, 0 files merged, 2 files removed, 0 files unresolved
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   142
  $ echo foo > c
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   143
  $ hg ci -Aqm "foo to c"
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   144
  $ hg prev
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   145
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   146
  [0] added hgignore
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   147
  $ echo bar > c
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   148
  $ hg ci -Aqm "bar to c"
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   149
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   150
  $ hg glog
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   151
  @  9:d0f84b25d4e3 bar to c
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   152
  |   () draft
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   153
  | o  8:1c165c673853 foo to c
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   154
  |/    () draft
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   155
  | o    7:968d205ba4d8 merging a and b
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   156
  | |\    () draft
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   157
  +---o  6:3d41537b44ca added a
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   158
  | |     () draft
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   159
  | o  4:64370c9805e7 added b
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   160
  |/    () draft
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   161
  o  0:8fa14d15e168 added hgignore
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   162
      () draft
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   163
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   164
Prune old test changesets to have clear graph view
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   165
  $ hg prune -r 64370c9805e7 -r 3d41537b44ca -r 968d205ba4d8
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   166
  3 changesets pruned
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   167
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   168
  $ hg glog
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   169
  @  9:d0f84b25d4e3 bar to c
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   170
  |   () draft
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   171
  | o  8:1c165c673853 foo to c
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   172
  |/    () draft
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   173
  o  0:8fa14d15e168 added hgignore
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   174
      () draft
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   175
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   176
  $ hg merge
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   177
  merging c
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   178
  warning: conflicts while merging c! (edit, then use 'hg resolve --mark')
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   179
  0 files updated, 0 files merged, 0 files removed, 1 files unresolved
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   180
  use 'hg resolve' to retry unresolved file merges or 'hg merge --abort' to abandon
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   181
  [1]
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   182
  $ echo foobar > c
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   183
  $ hg resolve -m
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   184
  (no more unresolved files)
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   185
  $ hg ci -m "foobar to c"
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   186
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   187
  $ hg glog
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   188
  @    10:fd41d25a3e90 foobar to c
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   189
  |\    () draft
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   190
  | o  9:d0f84b25d4e3 bar to c
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   191
  | |   () draft
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   192
  o |  8:1c165c673853 foo to c
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   193
  |/    () draft
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   194
  o  0:8fa14d15e168 added hgignore
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   195
      () draft
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   196
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   197
Testing with first parent obsoleted
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   198
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   199
  $ hg up 1c165c673853
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   200
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   201
  $ echo FOO > c
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   202
  $ hg amend
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   203
  1 new orphan changesets
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   204
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   205
  $ hg glog
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   206
  @  11:31c317b7bdb1 foo to c
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   207
  |   () draft
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   208
  | *    10:fd41d25a3e90 foobar to c
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   209
  | |\    () draft
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   210
  +---o  9:d0f84b25d4e3 bar to c
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   211
  | |     () draft
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   212
  | x  8:1c165c673853 foo to c
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   213
  |/    () draft
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   214
  o  0:8fa14d15e168 added hgignore
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   215
      () draft
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   216
4576
96ce1030d2fb tests: add --update to hg evolve to reduce test changes for the next patch
Anton Shestakov <av6@dwimlabs.net>
parents: 4122
diff changeset
   217
  $ hg evolve --all --update
3528
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   218
  move:[10] foobar to c
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   219
  atop:[11] foo to c
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   220
  merging c
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   221
  warning: conflicts while merging c! (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: 4613
diff changeset
   222
  unresolved merge conflicts
b6c819facbe8 evolvecmd: the proper way to deal with conflicts is to resolve them
Anton Shestakov <av6@dwimlabs.net>
parents: 4613
diff changeset
   223
  (see 'hg help evolve.interrupted')
3852
629558d09898 evolve: raise error.InterventionRequired instead of Abort when conflicts
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3843
diff changeset
   224
  [1]
3528
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   225
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   226
  $ echo FOObar > c
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   227
  $ hg resolve -m
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   228
  (no more unresolved files)
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   229
  continue: hg evolve --continue
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   230
  $ hg evolve --continue
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   231
  evolving 10:fd41d25a3e90 "foobar to c"
3529
d90e0faaec80 evolve: fix stabilization of orphan merge changesets in case of conflicts
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3528
diff changeset
   232
  working directory is now at c5405d2da7a1
3528
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   233
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   234
  $ hg glog
3529
d90e0faaec80 evolve: fix stabilization of orphan merge changesets in case of conflicts
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3528
diff changeset
   235
  @    12:c5405d2da7a1 foobar to c
3528
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   236
  |\    () draft
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   237
  | o  11:31c317b7bdb1 foo to c
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   238
  | |   () draft
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   239
  o |  9:d0f84b25d4e3 bar to c
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   240
  |/    () draft
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   241
  o  0:8fa14d15e168 added hgignore
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   242
      () draft
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   243
3529
d90e0faaec80 evolve: fix stabilization of orphan merge changesets in case of conflicts
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3528
diff changeset
   244
  $ hg parents
d90e0faaec80 evolve: fix stabilization of orphan merge changesets in case of conflicts
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3528
diff changeset
   245
  changeset:   12:c5405d2da7a1
d90e0faaec80 evolve: fix stabilization of orphan merge changesets in case of conflicts
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3528
diff changeset
   246
  tag:         tip
3571
34330381b76b evolve: preserve the order of merge parents in `hg evolve --continue`
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3544
diff changeset
   247
  parent:      9:d0f84b25d4e3
3529
d90e0faaec80 evolve: fix stabilization of orphan merge changesets in case of conflicts
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3528
diff changeset
   248
  parent:      11:31c317b7bdb1
d90e0faaec80 evolve: fix stabilization of orphan merge changesets in case of conflicts
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3528
diff changeset
   249
  user:        test
d90e0faaec80 evolve: fix stabilization of orphan merge changesets in case of conflicts
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3528
diff changeset
   250
  date:        Thu Jan 01 00:00:00 1970 +0000
d90e0faaec80 evolve: fix stabilization of orphan merge changesets in case of conflicts
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3528
diff changeset
   251
  summary:     foobar to c
d90e0faaec80 evolve: fix stabilization of orphan merge changesets in case of conflicts
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3528
diff changeset
   252
  
3528
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   253
Testing a conlficting merge with second parent obsoleted
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   254
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   255
  $ hg up 31c317b7bdb1
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   256
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   257
  $ echo foo > c
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   258
  $ hg amend
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   259
  1 new orphan changesets
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   260
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   261
  $ hg glog
3529
d90e0faaec80 evolve: fix stabilization of orphan merge changesets in case of conflicts
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3528
diff changeset
   262
  @  13:928097d0b5b5 foo to c
3528
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   263
  |   () draft
3529
d90e0faaec80 evolve: fix stabilization of orphan merge changesets in case of conflicts
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3528
diff changeset
   264
  | *    12:c5405d2da7a1 foobar to c
3528
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   265
  | |\    () draft
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   266
  +---x  11:31c317b7bdb1 foo to c
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   267
  | |     () draft
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   268
  | o  9:d0f84b25d4e3 bar to c
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   269
  |/    () draft
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   270
  o  0:8fa14d15e168 added hgignore
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   271
      () draft
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   272
4576
96ce1030d2fb tests: add --update to hg evolve to reduce test changes for the next patch
Anton Shestakov <av6@dwimlabs.net>
parents: 4122
diff changeset
   273
  $ hg evolve --all --update
3529
d90e0faaec80 evolve: fix stabilization of orphan merge changesets in case of conflicts
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3528
diff changeset
   274
  move:[12] foobar to c
d90e0faaec80 evolve: fix stabilization of orphan merge changesets in case of conflicts
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3528
diff changeset
   275
  atop:[13] foo to c
3528
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   276
  merging c
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   277
  warning: conflicts while merging c! (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: 4613
diff changeset
   278
  unresolved merge conflicts
b6c819facbe8 evolvecmd: the proper way to deal with conflicts is to resolve them
Anton Shestakov <av6@dwimlabs.net>
parents: 4613
diff changeset
   279
  (see 'hg help evolve.interrupted')
3852
629558d09898 evolve: raise error.InterventionRequired instead of Abort when conflicts
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3843
diff changeset
   280
  [1]
3528
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   281
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   282
  $ echo foobar > c
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   283
  $ hg resolve -m
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   284
  (no more unresolved files)
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   285
  continue: hg evolve --continue
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   286
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   287
  $ hg evolve --continue
3529
d90e0faaec80 evolve: fix stabilization of orphan merge changesets in case of conflicts
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3528
diff changeset
   288
  evolving 12:c5405d2da7a1 "foobar to c"
d90e0faaec80 evolve: fix stabilization of orphan merge changesets in case of conflicts
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3528
diff changeset
   289
  working directory is now at dc1948a6eeab
3528
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   290
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   291
  $ hg glog
3529
d90e0faaec80 evolve: fix stabilization of orphan merge changesets in case of conflicts
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3528
diff changeset
   292
  @    14:dc1948a6eeab foobar to c
d90e0faaec80 evolve: fix stabilization of orphan merge changesets in case of conflicts
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3528
diff changeset
   293
  |\    () draft
d90e0faaec80 evolve: fix stabilization of orphan merge changesets in case of conflicts
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3528
diff changeset
   294
  | o  13:928097d0b5b5 foo to c
d90e0faaec80 evolve: fix stabilization of orphan merge changesets in case of conflicts
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3528
diff changeset
   295
  | |   () draft
d90e0faaec80 evolve: fix stabilization of orphan merge changesets in case of conflicts
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3528
diff changeset
   296
  o |  9:d0f84b25d4e3 bar to c
3528
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   297
  |/    () draft
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   298
  o  0:8fa14d15e168 added hgignore
92f1e2408fd0 tests: add a test file of resolving orphaness of merge changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
   299
      () draft
3530
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   300
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   301
3) When stabilizing other changesets resulted in orphan merge changeset
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   302
-----------------------------------------------------------------------
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   303
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   304
  $ hg prune -r d0f84b25d4e3 -r 928097d0b5b5 -r dc1948a6eeab
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   305
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
4613
30a544904238 messages: standardize on "working copy is now at" including "is"
Martin von Zweigbergk <martinvonz@google.com>
parents: 4576
diff changeset
   306
  working directory is now at 8fa14d15e168
3530
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   307
  3 changesets pruned
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   308
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   309
  $ for ch in l m; do echo foo > $ch; hg ci -Aqm "added "$ch; done;
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   310
  $ hg up 8fa14d15e168
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   311
  0 files updated, 0 files merged, 2 files removed, 0 files unresolved
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   312
  $ for ch in x y; do echo foo > $ch; hg ci -Aqm "added "$ch; done;
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   313
  $ hg glog
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   314
  @  18:863d11043c67 added y
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   315
  |   () draft
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   316
  o  17:3f2247835c1d added x
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   317
  |   () draft
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   318
  | o  16:e44dc179e7f5 added m
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   319
  | |   () draft
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   320
  | o  15:8634bee7bf1e added l
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   321
  |/    () draft
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   322
  o  0:8fa14d15e168 added hgignore
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   323
      () draft
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   324
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   325
  $ hg merge
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   326
  2 files updated, 0 files merged, 0 files removed, 0 files unresolved
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   327
  (branch merge, don't forget to commit)
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   328
  $ hg ci -m "merge commit"
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   329
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   330
  $ hg up 8634bee7bf1e
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   331
  0 files updated, 0 files merged, 3 files removed, 0 files unresolved
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   332
  $ echo bar > l
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   333
  $ hg amend
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   334
  2 new orphan changesets
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   335
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   336
  $ hg glog
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   337
  @  20:fccc9de66799 added l
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   338
  |   () draft
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   339
  | *    19:190763373d8b merge commit
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   340
  | |\    () draft
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   341
  | | o  18:863d11043c67 added y
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   342
  | | |   () draft
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   343
  +---o  17:3f2247835c1d added x
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   344
  | |     () draft
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   345
  | *  16:e44dc179e7f5 added m
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   346
  | |   () draft
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   347
  | x  15:8634bee7bf1e added l
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   348
  |/    () draft
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   349
  o  0:8fa14d15e168 added hgignore
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   350
      () draft
4576
96ce1030d2fb tests: add --update to hg evolve to reduce test changes for the next patch
Anton Shestakov <av6@dwimlabs.net>
parents: 4122
diff changeset
   351
  $ hg evolve --all --update
3530
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   352
  move:[16] added m
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   353
  atop:[20] added l
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   354
  move:[19] merge commit
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   355
  working directory is now at a446ad3e6700
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   356
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   357
  $ hg glog
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   358
  @    22:a446ad3e6700 merge commit
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   359
  |\    () draft
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   360
  | o  21:495d2039f8f1 added m
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   361
  | |   () draft
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   362
  | o  20:fccc9de66799 added l
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   363
  | |   () draft
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   364
  o |  18:863d11043c67 added y
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   365
  | |   () draft
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   366
  o |  17:3f2247835c1d added x
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   367
  |/    () draft
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   368
  o  0:8fa14d15e168 added hgignore
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   369
      () draft
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   370
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   371
4) When both the parents of the merge changeset are obsolete with a succ
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   372
------------------------------------------------------------------------
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   373
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   374
  $ hg prune -r a446ad3e6700 -r 495d2039f8f1 -r 863d11043c67
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   375
  0 files updated, 0 files merged, 3 files removed, 0 files unresolved
4613
30a544904238 messages: standardize on "working copy is now at" including "is"
Martin von Zweigbergk <martinvonz@google.com>
parents: 4576
diff changeset
   376
  working directory is now at fccc9de66799
3530
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   377
  3 changesets pruned
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   378
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   379
  $ hg glog
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   380
  @  20:fccc9de66799 added l
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   381
  |   () draft
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   382
  | o  17:3f2247835c1d added x
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   383
  |/    () draft
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   384
  o  0:8fa14d15e168 added hgignore
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   385
      () draft
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   386
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   387
  $ hg merge
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   388
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   389
  (branch merge, don't forget to commit)
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   390
  $ hg ci -m "merged l and x"
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   391
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   392
  $ hg up fccc9de66799
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   393
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   394
  $ echo foobar > l
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   395
  $ hg amend
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   396
  1 new orphan changesets
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   397
  $ hg up 3f2247835c1d
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   398
  1 files updated, 0 files merged, 1 files removed, 0 files unresolved
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   399
  $ echo bar > x
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   400
  $ hg amend
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   401
  $ hg glog
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   402
  @  25:cdf6547da25f added x
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   403
  |   () draft
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   404
  | o  24:3f371171d767 added l
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   405
  |/    () draft
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   406
  | *    23:7b78a9784f3e merged l and x
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   407
  | |\    () draft
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   408
  +---x  20:fccc9de66799 added l
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   409
  | |     () draft
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   410
  | x  17:3f2247835c1d added x
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   411
  |/    () draft
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   412
  o  0:8fa14d15e168 added hgignore
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   413
      () draft
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   414
3f056d3a1f70 tests: add more tests related to stabilization of orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3529
diff changeset
   415
XXX: We should handle this case too
4576
96ce1030d2fb tests: add --update to hg evolve to reduce test changes for the next patch
Anton Shestakov <av6@dwimlabs.net>
parents: 4122
diff changeset
   416
  $ hg evolve --all --update
3573
d53277cdc1e7 evolve: handle stabilization of merge changeset with both parents obsoleted
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3571
diff changeset
   417
  move:[23] merged l and x
d53277cdc1e7 evolve: handle stabilization of merge changeset with both parents obsoleted
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3571
diff changeset
   418
  atop:[25] added x
d53277cdc1e7 evolve: handle stabilization of merge changeset with both parents obsoleted
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3571
diff changeset
   419
  move:[26] merged l and x
d53277cdc1e7 evolve: handle stabilization of merge changeset with both parents obsoleted
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3571
diff changeset
   420
  atop:[24] added l
d53277cdc1e7 evolve: handle stabilization of merge changeset with both parents obsoleted
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3571
diff changeset
   421
  working directory is now at adb665a78e08
3544
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   422
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   423
  $ hg glog
3573
d53277cdc1e7 evolve: handle stabilization of merge changeset with both parents obsoleted
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3571
diff changeset
   424
  @    27:adb665a78e08 merged l and x
3544
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   425
  |\    () draft
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   426
  | o  25:cdf6547da25f added x
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   427
  | |   () draft
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   428
  o |  24:3f371171d767 added l
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   429
  |/    () draft
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   430
  o  0:8fa14d15e168 added hgignore
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   431
      () draft
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   432
3573
d53277cdc1e7 evolve: handle stabilization of merge changeset with both parents obsoleted
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3571
diff changeset
   433
  $ hg exp
d53277cdc1e7 evolve: handle stabilization of merge changeset with both parents obsoleted
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3571
diff changeset
   434
  # HG changeset patch
d53277cdc1e7 evolve: handle stabilization of merge changeset with both parents obsoleted
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3571
diff changeset
   435
  # User test
d53277cdc1e7 evolve: handle stabilization of merge changeset with both parents obsoleted
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3571
diff changeset
   436
  # Date 0 0
d53277cdc1e7 evolve: handle stabilization of merge changeset with both parents obsoleted
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3571
diff changeset
   437
  #      Thu Jan 01 00:00:00 1970 +0000
d53277cdc1e7 evolve: handle stabilization of merge changeset with both parents obsoleted
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3571
diff changeset
   438
  # Node ID adb665a78e08b962cff415301058d782086c0f33
d53277cdc1e7 evolve: handle stabilization of merge changeset with both parents obsoleted
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3571
diff changeset
   439
  # Parent  3f371171d767ef79cf85d156cf46d4035960fcf0
d53277cdc1e7 evolve: handle stabilization of merge changeset with both parents obsoleted
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3571
diff changeset
   440
  # Parent  cdf6547da25f1ca5d01102302ad713f444547b48
d53277cdc1e7 evolve: handle stabilization of merge changeset with both parents obsoleted
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3571
diff changeset
   441
  merged l and x
d53277cdc1e7 evolve: handle stabilization of merge changeset with both parents obsoleted
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3571
diff changeset
   442
  
d53277cdc1e7 evolve: handle stabilization of merge changeset with both parents obsoleted
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3571
diff changeset
   443
  diff -r 3f371171d767 -r adb665a78e08 x
d53277cdc1e7 evolve: handle stabilization of merge changeset with both parents obsoleted
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3571
diff changeset
   444
  --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
d53277cdc1e7 evolve: handle stabilization of merge changeset with both parents obsoleted
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3571
diff changeset
   445
  +++ b/x	Thu Jan 01 00:00:00 1970 +0000
d53277cdc1e7 evolve: handle stabilization of merge changeset with both parents obsoleted
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3571
diff changeset
   446
  @@ -0,0 +1,1 @@
d53277cdc1e7 evolve: handle stabilization of merge changeset with both parents obsoleted
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3571
diff changeset
   447
  +bar
d53277cdc1e7 evolve: handle stabilization of merge changeset with both parents obsoleted
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3571
diff changeset
   448
d53277cdc1e7 evolve: handle stabilization of merge changeset with both parents obsoleted
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3571
diff changeset
   449
  $ hg parents
d53277cdc1e7 evolve: handle stabilization of merge changeset with both parents obsoleted
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3571
diff changeset
   450
  changeset:   27:adb665a78e08
d53277cdc1e7 evolve: handle stabilization of merge changeset with both parents obsoleted
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3571
diff changeset
   451
  tag:         tip
d53277cdc1e7 evolve: handle stabilization of merge changeset with both parents obsoleted
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3571
diff changeset
   452
  parent:      24:3f371171d767
d53277cdc1e7 evolve: handle stabilization of merge changeset with both parents obsoleted
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3571
diff changeset
   453
  parent:      25:cdf6547da25f
d53277cdc1e7 evolve: handle stabilization of merge changeset with both parents obsoleted
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3571
diff changeset
   454
  user:        test
d53277cdc1e7 evolve: handle stabilization of merge changeset with both parents obsoleted
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3571
diff changeset
   455
  date:        Thu Jan 01 00:00:00 1970 +0000
d53277cdc1e7 evolve: handle stabilization of merge changeset with both parents obsoleted
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3571
diff changeset
   456
  summary:     merged l and x
d53277cdc1e7 evolve: handle stabilization of merge changeset with both parents obsoleted
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3571
diff changeset
   457
  
d53277cdc1e7 evolve: handle stabilization of merge changeset with both parents obsoleted
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3571
diff changeset
   458
d53277cdc1e7 evolve: handle stabilization of merge changeset with both parents obsoleted
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3571
diff changeset
   459
5) When one of the merge parent is pruned without a successor
d53277cdc1e7 evolve: handle stabilization of merge changeset with both parents obsoleted
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3571
diff changeset
   460
-------------------------------------------------------------
d53277cdc1e7 evolve: handle stabilization of merge changeset with both parents obsoleted
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3571
diff changeset
   461
3544
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   462
  $ hg prune -r cdf6547da25f
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   463
  1 changesets pruned
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   464
  1 new orphan changesets
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   465
  $ hg glog
3573
d53277cdc1e7 evolve: handle stabilization of merge changeset with both parents obsoleted
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3571
diff changeset
   466
  @    27:adb665a78e08 merged l and x
3544
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   467
  |\    () draft
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   468
  | x  25:cdf6547da25f added x
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   469
  | |   () draft
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   470
  o |  24:3f371171d767 added l
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   471
  |/    () draft
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   472
  o  0:8fa14d15e168 added hgignore
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   473
      () draft
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   474
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   475
  $ hg evolve --rev .
3573
d53277cdc1e7 evolve: handle stabilization of merge changeset with both parents obsoleted
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3571
diff changeset
   476
  move:[27] merged l and x
3544
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   477
  atop:[0] added hgignore
3573
d53277cdc1e7 evolve: handle stabilization of merge changeset with both parents obsoleted
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3571
diff changeset
   478
  working directory is now at fb8fe870ae7d
3544
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   479
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   480
  $ hg glog
3573
d53277cdc1e7 evolve: handle stabilization of merge changeset with both parents obsoleted
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3571
diff changeset
   481
  @    28:fb8fe870ae7d merged l and x
3544
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   482
  |\    () draft
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   483
  | o  24:3f371171d767 added l
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   484
  |/    () draft
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   485
  o  0:8fa14d15e168 added hgignore
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   486
      () draft
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   487
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   488
6) When one parent is pruned without successor and the other parent of merge is
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   489
the parent of the pruned commit
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   490
--------------------------------------------------------------------------------
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   491
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   492
  $ hg glog
3573
d53277cdc1e7 evolve: handle stabilization of merge changeset with both parents obsoleted
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3571
diff changeset
   493
  @    28:fb8fe870ae7d merged l and x
3544
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   494
  |\    () draft
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   495
  | o  24:3f371171d767 added l
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   496
  |/    () draft
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   497
  o  0:8fa14d15e168 added hgignore
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   498
      () draft
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   499
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   500
  $ hg prune -r 3f371171d767
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   501
  1 changesets pruned
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   502
  1 new orphan changesets
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   503
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   504
  $ hg glog
3573
d53277cdc1e7 evolve: handle stabilization of merge changeset with both parents obsoleted
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3571
diff changeset
   505
  @    28:fb8fe870ae7d merged l and x
3544
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   506
  |\    () draft
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   507
  | x  24:3f371171d767 added l
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   508
  |/    () draft
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   509
  o  0:8fa14d15e168 added hgignore
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   510
      () draft
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   511
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   512
This is the right thing to do here. When you have a merge changeset, and one
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   513
parent is pruned and parent of that pruned parent is same as another parent of
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   514
the merge changeset, that should lead to merge changeset being a non-merge
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   515
changeset and non-pruned changeset as its only parent
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   516
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   517
If you look at the above graph, the side part:
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   518
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   519
\
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   520
 x
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   521
/
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   522
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   523
is redundant now as the changeset is pruned and we should remove this chain
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   524
while evolving.
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   525
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   526
This case can occur a lot of times in workflows where people make branches and
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   527
merge them again. After getting their work done, they may want to get rid of
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   528
that branch and they prune all their changeset, which will result in this
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   529
case where merge commit becomes orphan with its ancestors pruned up until a
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   530
point where the other parent of merge is the first non-pruned ancestor.
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   531
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   532
  $ hg evolve -r .
3573
d53277cdc1e7 evolve: handle stabilization of merge changeset with both parents obsoleted
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3571
diff changeset
   533
  move:[28] merged l and x
3544
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   534
  atop:[0] added hgignore
3573
d53277cdc1e7 evolve: handle stabilization of merge changeset with both parents obsoleted
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3571
diff changeset
   535
  working directory is now at b61ba77b924a
3544
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   536
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   537
  $ hg glog
3573
d53277cdc1e7 evolve: handle stabilization of merge changeset with both parents obsoleted
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3571
diff changeset
   538
  @  29:b61ba77b924a merged l and x
3544
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   539
  |   () draft
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   540
  o  0:8fa14d15e168 added hgignore
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   541
      () draft
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   542
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   543
7) When one parent is pruned without successor and has no parent
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   544
----------------------------------------------------------------
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   545
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   546
  $ hg prune -r .
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   547
  0 files updated, 0 files merged, 0 files removed, 0 files unresolved
4613
30a544904238 messages: standardize on "working copy is now at" including "is"
Martin von Zweigbergk <martinvonz@google.com>
parents: 4576
diff changeset
   548
  working directory is now at 8fa14d15e168
3544
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   549
  1 changesets pruned
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   550
  $ hg up null
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   551
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   552
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   553
  $ echo foo > foo
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   554
  $ hg add foo
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   555
  $ hg ci -m "added foo"
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   556
  created new head
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   557
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   558
  $ hg merge
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   559
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   560
  (branch merge, don't forget to commit)
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   561
  $ hg ci -m "merge commit"
3573
d53277cdc1e7 evolve: handle stabilization of merge changeset with both parents obsoleted
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3571
diff changeset
   562
  $ hg glog
d53277cdc1e7 evolve: handle stabilization of merge changeset with both parents obsoleted
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3571
diff changeset
   563
  @    31:32beb84b9dbc merge commit
d53277cdc1e7 evolve: handle stabilization of merge changeset with both parents obsoleted
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3571
diff changeset
   564
  |\    () draft
d53277cdc1e7 evolve: handle stabilization of merge changeset with both parents obsoleted
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3571
diff changeset
   565
  | o  30:f3ba8b99bb6f added foo
d53277cdc1e7 evolve: handle stabilization of merge changeset with both parents obsoleted
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3571
diff changeset
   566
  |     () draft
d53277cdc1e7 evolve: handle stabilization of merge changeset with both parents obsoleted
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3571
diff changeset
   567
  o  0:8fa14d15e168 added hgignore
d53277cdc1e7 evolve: handle stabilization of merge changeset with both parents obsoleted
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3571
diff changeset
   568
      () draft
3544
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   569
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   570
  $ hg prune -r f3ba8b99bb6f
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   571
  1 changesets pruned
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   572
  1 new orphan changesets
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   573
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   574
  $ hg glog
3573
d53277cdc1e7 evolve: handle stabilization of merge changeset with both parents obsoleted
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3571
diff changeset
   575
  @    31:32beb84b9dbc merge commit
3544
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   576
  |\    () draft
3573
d53277cdc1e7 evolve: handle stabilization of merge changeset with both parents obsoleted
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3571
diff changeset
   577
  | x  30:f3ba8b99bb6f added foo
3544
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   578
  |     () draft
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   579
  o  0:8fa14d15e168 added hgignore
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   580
      () draft
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   581
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   582
The current behavior seems to be the correct behavior in the above case. This is
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   583
also another case which can arise flow merge workflow where people start a
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   584
branch from null changeset and merge it and then prune it or get rid of it.
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   585
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   586
Also if you look at the above graph, the side part:
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   587
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   588
\
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   589
 x
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   590
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   591
becomes redundant as the changeset is pruned without successor and we should
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   592
just remove that chain.
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   593
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   594
  $ hg evolve -r .
3573
d53277cdc1e7 evolve: handle stabilization of merge changeset with both parents obsoleted
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3571
diff changeset
   595
  move:[31] merge commit
3544
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   596
  atop:[-1] 
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   597
  working directory is now at d2a03dd8c951
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   598
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   599
  $ hg glog
3573
d53277cdc1e7 evolve: handle stabilization of merge changeset with both parents obsoleted
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3571
diff changeset
   600
  @  32:d2a03dd8c951 merge commit
3544
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   601
  |   () draft
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   602
  o  0:8fa14d15e168 added hgignore
329056287ef5 tests: add more cases about stabilization of an orphaned merge commit
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3530
diff changeset
   603
      () draft