tests/test-evolve-content-divergent-relocation.t
author Martin von Zweigbergk <martinvonz@google.com>
Mon, 09 Dec 2019 11:09:11 -0800
changeset 5343 ebfd0d875600
parent 5342 265e029785ae
child 5344 142827ad86f3
permissions -rw-r--r--
evolve: handle relocation during divergence resolution producing no changes When resolving divergence and the two divergent commits have different parents, we start by rebasing one of them to have the same parent as the other. That step can result in no changes to commit. When it does, we would crash with a TypeError before this patch. This patch fixes it by instead creating an empty commit in that scenario. The existing code then continues to attempt to merge it, which produces no changes, and no commit is created on top. The other side of the divergence is marked as successor as usual, so orphans from the side that became empty will be evolved to the right place (see test).
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
4481
d02a7c8cdee5 test: consolidate the content-divergent test cases
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4424
diff changeset
     1
======================================================
d02a7c8cdee5 test: consolidate the content-divergent test cases
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4424
diff changeset
     2
Tests the resolution of content divergence: relocation
d02a7c8cdee5 test: consolidate the content-divergent test cases
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4424
diff changeset
     3
======================================================
d02a7c8cdee5 test: consolidate the content-divergent test cases
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4424
diff changeset
     4
d02a7c8cdee5 test: consolidate the content-divergent test cases
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4424
diff changeset
     5
This file intend to cover case where changesets need to be moved to different parents
3790
5b9e3aaa6da8 evolve: prompt user for branch selection while resolving content-divergence
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
     6
5b9e3aaa6da8 evolve: prompt user for branch selection while resolving content-divergence
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
     7
  $ cat >> $HGRCPATH <<EOF
5b9e3aaa6da8 evolve: prompt user for branch selection while resolving content-divergence
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
     8
  > [alias]
5b9e3aaa6da8 evolve: prompt user for branch selection while resolving content-divergence
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
     9
  > glog = log -GT "{rev}:{node|short} {desc|firstline}\n ({bookmarks}) [{branch}] {phase}"
3844
48fbccfd1dff tests: add test of resolution of content-divergent stacks
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3842
diff changeset
    10
  > [phases]
48fbccfd1dff tests: add test of resolution of content-divergent stacks
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3842
diff changeset
    11
  > publish = False
3790
5b9e3aaa6da8 evolve: prompt user for branch selection while resolving content-divergence
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    12
  > [extensions]
3804
509b1e66f0b9 tests: add tests for resolving content-divergence with parent change
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3802
diff changeset
    13
  > rebase =
3790
5b9e3aaa6da8 evolve: prompt user for branch selection while resolving content-divergence
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    14
  > EOF
5b9e3aaa6da8 evolve: prompt user for branch selection while resolving content-divergence
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    15
  $ echo "evolve=$(echo $(dirname $TESTDIR))/hgext3rd/evolve/" >> $HGRCPATH
5b9e3aaa6da8 evolve: prompt user for branch selection while resolving content-divergence
Pulkit Goyal <7895pulkit@gmail.com>
parents:
diff changeset
    16
3804
509b1e66f0b9 tests: add tests for resolving content-divergence with parent change
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3802
diff changeset
    17
509b1e66f0b9 tests: add tests for resolving content-divergence with parent change
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3802
diff changeset
    18
Testing resolution of content-divergent changesets when they are on different
3806
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
    19
parents and resolution and relocation wont result in conflicts
3804
509b1e66f0b9 tests: add tests for resolving content-divergence with parent change
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3802
diff changeset
    20
------------------------------------------------------------------------------
509b1e66f0b9 tests: add tests for resolving content-divergence with parent change
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3802
diff changeset
    21
509b1e66f0b9 tests: add tests for resolving content-divergence with parent change
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3802
diff changeset
    22
  $ hg init multiparents
509b1e66f0b9 tests: add tests for resolving content-divergence with parent change
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3802
diff changeset
    23
  $ cd multiparents
509b1e66f0b9 tests: add tests for resolving content-divergence with parent change
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3802
diff changeset
    24
  $ echo ".*\.orig" > .hgignore
509b1e66f0b9 tests: add tests for resolving content-divergence with parent change
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3802
diff changeset
    25
  $ hg add .hgignore
509b1e66f0b9 tests: add tests for resolving content-divergence with parent change
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3802
diff changeset
    26
  $ hg ci -m "added hgignore"
509b1e66f0b9 tests: add tests for resolving content-divergence with parent change
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3802
diff changeset
    27
  $ for ch in a b c d; do echo foo > $ch; hg add $ch; hg ci -qm "added "$ch; done;
509b1e66f0b9 tests: add tests for resolving content-divergence with parent change
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3802
diff changeset
    28
509b1e66f0b9 tests: add tests for resolving content-divergence with parent change
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3802
diff changeset
    29
  $ hg glog
509b1e66f0b9 tests: add tests for resolving content-divergence with parent change
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3802
diff changeset
    30
  @  4:c41c793e0ef1 added d
509b1e66f0b9 tests: add tests for resolving content-divergence with parent change
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3802
diff changeset
    31
  |   () [default] draft
509b1e66f0b9 tests: add tests for resolving content-divergence with parent change
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3802
diff changeset
    32
  o  3:ca1b80f7960a added c
509b1e66f0b9 tests: add tests for resolving content-divergence with parent change
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3802
diff changeset
    33
  |   () [default] draft
509b1e66f0b9 tests: add tests for resolving content-divergence with parent change
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3802
diff changeset
    34
  o  2:b1661037fa25 added b
509b1e66f0b9 tests: add tests for resolving content-divergence with parent change
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3802
diff changeset
    35
  |   () [default] draft
509b1e66f0b9 tests: add tests for resolving content-divergence with parent change
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3802
diff changeset
    36
  o  1:c7586e2a9264 added a
509b1e66f0b9 tests: add tests for resolving content-divergence with parent change
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3802
diff changeset
    37
  |   () [default] draft
509b1e66f0b9 tests: add tests for resolving content-divergence with parent change
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3802
diff changeset
    38
  o  0:8fa14d15e168 added hgignore
509b1e66f0b9 tests: add tests for resolving content-divergence with parent change
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3802
diff changeset
    39
      () [default] draft
509b1e66f0b9 tests: add tests for resolving content-divergence with parent change
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3802
diff changeset
    40
509b1e66f0b9 tests: add tests for resolving content-divergence with parent change
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3802
diff changeset
    41
  $ hg up .^^
509b1e66f0b9 tests: add tests for resolving content-divergence with parent change
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3802
diff changeset
    42
  0 files updated, 0 files merged, 2 files removed, 0 files unresolved
509b1e66f0b9 tests: add tests for resolving content-divergence with parent change
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3802
diff changeset
    43
  $ echo bar > b
509b1e66f0b9 tests: add tests for resolving content-divergence with parent change
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3802
diff changeset
    44
  $ hg amend
509b1e66f0b9 tests: add tests for resolving content-divergence with parent change
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3802
diff changeset
    45
  2 new orphan changesets
509b1e66f0b9 tests: add tests for resolving content-divergence with parent change
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3802
diff changeset
    46
509b1e66f0b9 tests: add tests for resolving content-divergence with parent change
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3802
diff changeset
    47
  $ hg rebase -r b1661037fa25 -d 8fa14d15e168 --hidden --config experimental.evolution.allowdivergence=True
509b1e66f0b9 tests: add tests for resolving content-divergence with parent change
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3802
diff changeset
    48
  rebasing 2:b1661037fa25 "added b"
509b1e66f0b9 tests: add tests for resolving content-divergence with parent change
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3802
diff changeset
    49
  2 new content-divergent changesets
509b1e66f0b9 tests: add tests for resolving content-divergence with parent change
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3802
diff changeset
    50
509b1e66f0b9 tests: add tests for resolving content-divergence with parent change
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3802
diff changeset
    51
  $ hg glog
509b1e66f0b9 tests: add tests for resolving content-divergence with parent change
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3802
diff changeset
    52
  *  6:da4b96f4a8d6 added b
509b1e66f0b9 tests: add tests for resolving content-divergence with parent change
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3802
diff changeset
    53
  |   () [default] draft
509b1e66f0b9 tests: add tests for resolving content-divergence with parent change
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3802
diff changeset
    54
  | @  5:7ed0642d644b added b
509b1e66f0b9 tests: add tests for resolving content-divergence with parent change
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3802
diff changeset
    55
  | |   () [default] draft
509b1e66f0b9 tests: add tests for resolving content-divergence with parent change
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3802
diff changeset
    56
  | | *  4:c41c793e0ef1 added d
509b1e66f0b9 tests: add tests for resolving content-divergence with parent change
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3802
diff changeset
    57
  | | |   () [default] draft
509b1e66f0b9 tests: add tests for resolving content-divergence with parent change
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3802
diff changeset
    58
  | | *  3:ca1b80f7960a added c
509b1e66f0b9 tests: add tests for resolving content-divergence with parent change
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3802
diff changeset
    59
  | | |   () [default] draft
509b1e66f0b9 tests: add tests for resolving content-divergence with parent change
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3802
diff changeset
    60
  | | x  2:b1661037fa25 added b
509b1e66f0b9 tests: add tests for resolving content-divergence with parent change
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3802
diff changeset
    61
  | |/    () [default] draft
509b1e66f0b9 tests: add tests for resolving content-divergence with parent change
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3802
diff changeset
    62
  | o  1:c7586e2a9264 added a
509b1e66f0b9 tests: add tests for resolving content-divergence with parent change
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3802
diff changeset
    63
  |/    () [default] draft
509b1e66f0b9 tests: add tests for resolving content-divergence with parent change
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3802
diff changeset
    64
  o  0:8fa14d15e168 added hgignore
509b1e66f0b9 tests: add tests for resolving content-divergence with parent change
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3802
diff changeset
    65
      () [default] draft
509b1e66f0b9 tests: add tests for resolving content-divergence with parent change
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3802
diff changeset
    66
509b1e66f0b9 tests: add tests for resolving content-divergence with parent change
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3802
diff changeset
    67
  $ hg evolve --content-divergent
3805
2410e7063692 evolve: implement resolution of content-divergence when on differet parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3804
diff changeset
    68
  merge:[5] added b
2410e7063692 evolve: implement resolution of content-divergence when on differet parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3804
diff changeset
    69
  with: [6] added b
2410e7063692 evolve: implement resolution of content-divergence when on differet parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3804
diff changeset
    70
  base: [2] added b
2410e7063692 evolve: implement resolution of content-divergence when on differet parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3804
diff changeset
    71
  rebasing "other" content-divergent changeset da4b96f4a8d6 on c7586e2a9264
2410e7063692 evolve: implement resolution of content-divergence when on differet parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3804
diff changeset
    72
  0 files updated, 0 files merged, 0 files removed, 0 files unresolved
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
    73
  working directory is now at f8f130ec5d39
3804
509b1e66f0b9 tests: add tests for resolving content-divergence with parent change
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3802
diff changeset
    74
509b1e66f0b9 tests: add tests for resolving content-divergence with parent change
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3802
diff changeset
    75
  $ hg glog
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
    76
  @  8:f8f130ec5d39 added b
3804
509b1e66f0b9 tests: add tests for resolving content-divergence with parent change
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3802
diff changeset
    77
  |   () [default] draft
3805
2410e7063692 evolve: implement resolution of content-divergence when on differet parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3804
diff changeset
    78
  | *  4:c41c793e0ef1 added d
3804
509b1e66f0b9 tests: add tests for resolving content-divergence with parent change
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3802
diff changeset
    79
  | |   () [default] draft
3805
2410e7063692 evolve: implement resolution of content-divergence when on differet parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3804
diff changeset
    80
  | *  3:ca1b80f7960a added c
2410e7063692 evolve: implement resolution of content-divergence when on differet parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3804
diff changeset
    81
  | |   () [default] draft
2410e7063692 evolve: implement resolution of content-divergence when on differet parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3804
diff changeset
    82
  | x  2:b1661037fa25 added b
3804
509b1e66f0b9 tests: add tests for resolving content-divergence with parent change
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3802
diff changeset
    83
  |/    () [default] draft
3805
2410e7063692 evolve: implement resolution of content-divergence when on differet parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3804
diff changeset
    84
  o  1:c7586e2a9264 added a
2410e7063692 evolve: implement resolution of content-divergence when on differet parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3804
diff changeset
    85
  |   () [default] draft
3804
509b1e66f0b9 tests: add tests for resolving content-divergence with parent change
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3802
diff changeset
    86
  o  0:8fa14d15e168 added hgignore
509b1e66f0b9 tests: add tests for resolving content-divergence with parent change
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3802
diff changeset
    87
      () [default] draft
3805
2410e7063692 evolve: implement resolution of content-divergence when on differet parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3804
diff changeset
    88
2410e7063692 evolve: implement resolution of content-divergence when on differet parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3804
diff changeset
    89
  $ hg exp
2410e7063692 evolve: implement resolution of content-divergence when on differet parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3804
diff changeset
    90
  # HG changeset patch
2410e7063692 evolve: implement resolution of content-divergence when on differet parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3804
diff changeset
    91
  # User test
2410e7063692 evolve: implement resolution of content-divergence when on differet parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3804
diff changeset
    92
  # Date 0 0
2410e7063692 evolve: implement resolution of content-divergence when on differet parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3804
diff changeset
    93
  #      Thu Jan 01 00:00:00 1970 +0000
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
    94
  # Node ID f8f130ec5d399699738abf984a885baa4fa9f06c
3805
2410e7063692 evolve: implement resolution of content-divergence when on differet parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3804
diff changeset
    95
  # Parent  c7586e2a92645e473645847a7b69a6dc52be4276
2410e7063692 evolve: implement resolution of content-divergence when on differet parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3804
diff changeset
    96
  added b
2410e7063692 evolve: implement resolution of content-divergence when on differet parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3804
diff changeset
    97
  
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
    98
  diff -r c7586e2a9264 -r f8f130ec5d39 b
3805
2410e7063692 evolve: implement resolution of content-divergence when on differet parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3804
diff changeset
    99
  --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
2410e7063692 evolve: implement resolution of content-divergence when on differet parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3804
diff changeset
   100
  +++ b/b	Thu Jan 01 00:00:00 1970 +0000
2410e7063692 evolve: implement resolution of content-divergence when on differet parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3804
diff changeset
   101
  @@ -0,0 +1,1 @@
2410e7063692 evolve: implement resolution of content-divergence when on differet parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3804
diff changeset
   102
  +bar
3806
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   103
5324
c834fdb87f90 tests: add more verification of output to divergence tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 5323
diff changeset
   104
  $ hg debugobsolete
c834fdb87f90 tests: add more verification of output to divergence tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 5323
diff changeset
   105
  b1661037fa25511d0b7ccddf405e336f9d7d3424 7ed0642d644bb9ad93d252dd9ffe7b4729febe48 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '8', 'operation': 'amend', 'user': 'test'}
c834fdb87f90 tests: add more verification of output to divergence tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 5323
diff changeset
   106
  b1661037fa25511d0b7ccddf405e336f9d7d3424 da4b96f4a8d610a85b225583138f681d67e275dd 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'rebase', 'user': 'test'}
c834fdb87f90 tests: add more verification of output to divergence tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 5323
diff changeset
   107
  da4b96f4a8d610a85b225583138f681d67e275dd 11f849d7159fa30a63dbbc1a6d251a8d996baeb5 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'evolve', 'user': 'test'}
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   108
  7ed0642d644bb9ad93d252dd9ffe7b4729febe48 f8f130ec5d399699738abf984a885baa4fa9f06c 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '2', 'operation': 'evolve', 'user': 'test'}
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   109
  11f849d7159fa30a63dbbc1a6d251a8d996baeb5 f8f130ec5d399699738abf984a885baa4fa9f06c 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '10', 'operation': 'evolve', 'user': 'test'}
5324
c834fdb87f90 tests: add more verification of output to divergence tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 5323
diff changeset
   110
  $ hg obslog --all
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   111
  @    f8f130ec5d39 (8) added b
5324
c834fdb87f90 tests: add more verification of output to divergence tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 5323
diff changeset
   112
  |\
c834fdb87f90 tests: add more verification of output to divergence tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 5323
diff changeset
   113
  x |  11f849d7159f (7) added b
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   114
  | |    rewritten(meta, content) as f8f130ec5d39 using evolve by test (Thu Jan 01 00:00:00 1970 +0000)
5324
c834fdb87f90 tests: add more verification of output to divergence tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 5323
diff changeset
   115
  | |
c834fdb87f90 tests: add more verification of output to divergence tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 5323
diff changeset
   116
  | x  7ed0642d644b (5) added b
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   117
  | |    meta-changed(meta) as f8f130ec5d39 using evolve by test (Thu Jan 01 00:00:00 1970 +0000)
5324
c834fdb87f90 tests: add more verification of output to divergence tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 5323
diff changeset
   118
  | |
c834fdb87f90 tests: add more verification of output to divergence tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 5323
diff changeset
   119
  x |  da4b96f4a8d6 (6) added b
c834fdb87f90 tests: add more verification of output to divergence tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 5323
diff changeset
   120
  |/     rebased(parent) as 11f849d7159f using evolve by test (Thu Jan 01 00:00:00 1970 +0000)
c834fdb87f90 tests: add more verification of output to divergence tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 5323
diff changeset
   121
  |
c834fdb87f90 tests: add more verification of output to divergence tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 5323
diff changeset
   122
  x  b1661037fa25 (2) added b
c834fdb87f90 tests: add more verification of output to divergence tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 5323
diff changeset
   123
       amended(content) as 7ed0642d644b using amend by test (Thu Jan 01 00:00:00 1970 +0000)
c834fdb87f90 tests: add more verification of output to divergence tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 5323
diff changeset
   124
       rebased(parent) as da4b96f4a8d6 using rebase by test (Thu Jan 01 00:00:00 1970 +0000)
c834fdb87f90 tests: add more verification of output to divergence tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 5323
diff changeset
   125
  
c834fdb87f90 tests: add more verification of output to divergence tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 5323
diff changeset
   126
3806
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   127
Resolving orphans to get back to a normal graph
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   128
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   129
  $ hg evolve --all
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   130
  move:[3] added c
3846
f9dad99a90d5 evolve: create a new commit instead of amending one of the divergents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3845
diff changeset
   131
  atop:[8] added b
3806
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   132
  move:[4] added d
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   133
  $ hg glog
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   134
  o  10:d34e10c64365 added d
3806
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   135
  |   () [default] draft
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   136
  o  9:65f70b47129d added c
3806
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   137
  |   () [default] draft
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   138
  @  8:f8f130ec5d39 added b
3806
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   139
  |   () [default] draft
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   140
  o  1:c7586e2a9264 added a
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   141
  |   () [default] draft
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   142
  o  0:8fa14d15e168 added hgignore
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   143
      () [default] draft
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   144
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   145
More testing!
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   146
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   147
  $ echo x > x
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   148
  $ hg ci -Aqm "added x"
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   149
  $ hg glog -r .
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   150
  @  11:19fde4a13e16 added x
3806
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   151
  |   () [default] draft
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   152
  ~
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   153
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   154
  $ echo foo > x
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   155
  $ hg branch bar
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   156
  marked working directory as branch bar
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   157
  (branches are permanent and global, did you want a bookmark?)
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   158
  $ hg amend -m "added foo to x"
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   159
5325
304de9a04172 tests: avoid referring to commits by hash in a few places
Martin von Zweigbergk <martinvonz@google.com>
parents: 5324
diff changeset
   160
  $ hg up 'predecessors(.)' --hidden
3806
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   161
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   162
  updated to hidden changeset 19fde4a13e16
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   163
  (hidden revision '19fde4a13e16' was rewritten as: 271db13e4ad1)
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   164
  working directory parent is obsolete! (19fde4a13e16)
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   165
  (use 'hg evolve' to update to its successor: 271db13e4ad1)
5325
304de9a04172 tests: avoid referring to commits by hash in a few places
Martin von Zweigbergk <martinvonz@google.com>
parents: 5324
diff changeset
   166
  $ hg rebase -r . -d 'desc("added d")' --config experimental.evolution.allowdivergence=True
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   167
  rebasing 11:19fde4a13e16 "added x"
3806
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   168
  2 new content-divergent changesets
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   169
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   170
  $ hg glog
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   171
  @  13:eb9a1b31b6d8 added x
3806
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   172
  |   () [default] draft
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   173
  | *  12:271db13e4ad1 added foo to x
3806
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   174
  | |   () [bar] draft
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   175
  o |  10:d34e10c64365 added d
3806
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   176
  | |   () [default] draft
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   177
  o |  9:65f70b47129d added c
3806
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   178
  |/    () [default] draft
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   179
  o  8:f8f130ec5d39 added b
3806
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   180
  |   () [default] draft
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   181
  o  1:c7586e2a9264 added a
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   182
  |   () [default] draft
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   183
  o  0:8fa14d15e168 added hgignore
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   184
      () [default] draft
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   185
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   186
  $ hg evolve --content-divergent
3846
f9dad99a90d5 evolve: create a new commit instead of amending one of the divergents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3845
diff changeset
   187
  merge:[13] added x
f9dad99a90d5 evolve: create a new commit instead of amending one of the divergents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3845
diff changeset
   188
  with: [12] added foo to x
f9dad99a90d5 evolve: create a new commit instead of amending one of the divergents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3845
diff changeset
   189
  base: [11] added x
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   190
  rebasing "other" content-divergent changeset 271db13e4ad1 on d34e10c64365
3806
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   191
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   192
  working directory is now at 806f7694feb1
3806
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   193
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   194
  $ hg exp
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   195
  # HG changeset patch
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   196
  # User test
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   197
  # Date 0 0
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   198
  #      Thu Jan 01 00:00:00 1970 +0000
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   199
  # Branch bar
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   200
  # Node ID 806f7694feb1c58fdd7bf656445f3bd5463a008e
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   201
  # Parent  d34e10c643651d577eef840b427b58d9bd6ae3f0
3806
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   202
  added foo to x
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   203
  
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   204
  diff -r d34e10c64365 -r 806f7694feb1 x
3806
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   205
  --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   206
  +++ b/x	Thu Jan 01 00:00:00 1970 +0000
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   207
  @@ -0,0 +1,1 @@
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   208
  +foo
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   209
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   210
The above `hg exp` and the following log call demonstrates that message, content
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   211
and branch change is preserved in case of relocation
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   212
  $ hg glog
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   213
  @  15:806f7694feb1 added foo to x
3806
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   214
  |   () [bar] draft
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   215
  o  10:d34e10c64365 added d
3806
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   216
  |   () [default] draft
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   217
  o  9:65f70b47129d added c
3806
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   218
  |   () [default] draft
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   219
  o  8:f8f130ec5d39 added b
3806
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   220
  |   () [default] draft
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   221
  o  1:c7586e2a9264 added a
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   222
  |   () [default] draft
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   223
  o  0:8fa14d15e168 added hgignore
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   224
      () [default] draft
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   225
5324
c834fdb87f90 tests: add more verification of output to divergence tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 5323
diff changeset
   226
  $ hg debugobsolete
c834fdb87f90 tests: add more verification of output to divergence tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 5323
diff changeset
   227
  b1661037fa25511d0b7ccddf405e336f9d7d3424 7ed0642d644bb9ad93d252dd9ffe7b4729febe48 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '8', 'operation': 'amend', 'user': 'test'}
c834fdb87f90 tests: add more verification of output to divergence tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 5323
diff changeset
   228
  b1661037fa25511d0b7ccddf405e336f9d7d3424 da4b96f4a8d610a85b225583138f681d67e275dd 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'rebase', 'user': 'test'}
c834fdb87f90 tests: add more verification of output to divergence tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 5323
diff changeset
   229
  da4b96f4a8d610a85b225583138f681d67e275dd 11f849d7159fa30a63dbbc1a6d251a8d996baeb5 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'evolve', 'user': 'test'}
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   230
  7ed0642d644bb9ad93d252dd9ffe7b4729febe48 f8f130ec5d399699738abf984a885baa4fa9f06c 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '2', 'operation': 'evolve', 'user': 'test'}
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   231
  11f849d7159fa30a63dbbc1a6d251a8d996baeb5 f8f130ec5d399699738abf984a885baa4fa9f06c 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '10', 'operation': 'evolve', 'user': 'test'}
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   232
  ca1b80f7960aae2306287bab52b4090c59af8c29 65f70b47129d8466acbdc70bfb1efef3d05388e7 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'evolve', 'user': 'test'}
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   233
  c41c793e0ef1ddb463e85ea9491e377d01127ba2 d34e10c643651d577eef840b427b58d9bd6ae3f0 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'evolve', 'user': 'test'}
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   234
  19fde4a13e167ceb55fcfd7937268027f7e716f0 271db13e4ad11d4ca78b12e74e7341cb74c05a85 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '73', 'operation': 'amend', 'user': 'test'}
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   235
  19fde4a13e167ceb55fcfd7937268027f7e716f0 eb9a1b31b6d812c036ca547aca2931edde6d1e06 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'rebase', 'user': 'test'}
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   236
  271db13e4ad11d4ca78b12e74e7341cb74c05a85 16810a5772dd9a27f4c0302d4e41009a2518588c 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'evolve', 'user': 'test'}
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   237
  eb9a1b31b6d812c036ca547aca2931edde6d1e06 806f7694feb1c58fdd7bf656445f3bd5463a008e 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '75', 'operation': 'evolve', 'user': 'test'}
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   238
  16810a5772dd9a27f4c0302d4e41009a2518588c 806f7694feb1c58fdd7bf656445f3bd5463a008e 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '2', 'operation': 'evolve', 'user': 'test'}
5324
c834fdb87f90 tests: add more verification of output to divergence tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 5323
diff changeset
   239
  $ hg obslog --all
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   240
  @    806f7694feb1 (15) added foo to x
5324
c834fdb87f90 tests: add more verification of output to divergence tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 5323
diff changeset
   241
  |\
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   242
  x |  16810a5772dd (14) added foo to x
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   243
  | |    meta-changed(meta) as 806f7694feb1 using evolve by test (Thu Jan 01 00:00:00 1970 +0000)
5324
c834fdb87f90 tests: add more verification of output to divergence tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 5323
diff changeset
   244
  | |
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   245
  | x  eb9a1b31b6d8 (13) added x
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   246
  | |    rewritten(description, meta, branch, content) as 806f7694feb1 using evolve by test (Thu Jan 01 00:00:00 1970 +0000)
5324
c834fdb87f90 tests: add more verification of output to divergence tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 5323
diff changeset
   247
  | |
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   248
  x |  271db13e4ad1 (12) added foo to x
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   249
  |/     rebased(parent) as 16810a5772dd using evolve by test (Thu Jan 01 00:00:00 1970 +0000)
5324
c834fdb87f90 tests: add more verification of output to divergence tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 5323
diff changeset
   250
  |
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   251
  x  19fde4a13e16 (11) added x
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   252
       rewritten(description, branch, content) as 271db13e4ad1 using amend by test (Thu Jan 01 00:00:00 1970 +0000)
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   253
       rebased(parent) as eb9a1b31b6d8 using rebase by test (Thu Jan 01 00:00:00 1970 +0000)
5324
c834fdb87f90 tests: add more verification of output to divergence tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 5323
diff changeset
   254
  
c834fdb87f90 tests: add more verification of output to divergence tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 5323
diff changeset
   255
3806
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   256
Testing when both the content-divergence are on different parents and resolution
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   257
will lead to conflicts
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   258
---------------------------------------------------------------------------------
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   259
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   260
  $ hg up .^^^
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   261
  0 files updated, 0 files merged, 3 files removed, 0 files unresolved
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   262
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   263
  $ echo y > y
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   264
  $ hg ci -Aqm "added y"
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   265
  $ hg glog -r .
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   266
  @  16:6a167ad77c24 added y
3806
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   267
  |   () [default] draft
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   268
  ~
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   269
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   270
  $ echo bar > y
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   271
  $ hg amend
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   272
5325
304de9a04172 tests: avoid referring to commits by hash in a few places
Martin von Zweigbergk <martinvonz@google.com>
parents: 5324
diff changeset
   273
  $ hg up 'predecessors(.)' --hidden
3806
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   274
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   275
  updated to hidden changeset 6a167ad77c24
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   276
  (hidden revision '6a167ad77c24' was rewritten as: 856e7b6a8392)
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   277
  working directory parent is obsolete! (6a167ad77c24)
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   278
  (use 'hg evolve' to update to its successor: 856e7b6a8392)
5325
304de9a04172 tests: avoid referring to commits by hash in a few places
Martin von Zweigbergk <martinvonz@google.com>
parents: 5324
diff changeset
   279
  $ hg rebase -r . -d 'desc("added foo to x")' --config experimental.evolution.allowdivergence=True
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   280
  rebasing 16:6a167ad77c24 "added y"
3806
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   281
  2 new content-divergent changesets
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   282
  $ echo wat > y
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   283
  $ hg amend
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   284
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   285
  $ hg glog
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   286
  @  19:750fd38fec35 added y
3806
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   287
  |   () [bar] draft
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   288
  | *  17:856e7b6a8392 added y
3806
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   289
  | |   () [default] draft
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   290
  o |  15:806f7694feb1 added foo to x
3806
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   291
  | |   () [bar] draft
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   292
  o |  10:d34e10c64365 added d
3806
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   293
  | |   () [default] draft
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   294
  o |  9:65f70b47129d added c
3806
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   295
  |/    () [default] draft
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   296
  o  8:f8f130ec5d39 added b
3806
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   297
  |   () [default] draft
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   298
  o  1:c7586e2a9264 added a
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   299
  |   () [default] draft
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   300
  o  0:8fa14d15e168 added hgignore
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   301
      () [default] draft
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   302
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   303
  $ hg evolve --content-divergent
3846
f9dad99a90d5 evolve: create a new commit instead of amending one of the divergents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3845
diff changeset
   304
  merge:[19] added y
f9dad99a90d5 evolve: create a new commit instead of amending one of the divergents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3845
diff changeset
   305
  with: [17] added y
f9dad99a90d5 evolve: create a new commit instead of amending one of the divergents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3845
diff changeset
   306
  base: [16] added y
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   307
  rebasing "other" content-divergent changeset 856e7b6a8392 on 806f7694feb1
3806
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   308
  merging y
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   309
  warning: conflicts while merging y! (edit, then use 'hg resolve --mark')
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   310
  0 files updated, 0 files merged, 0 files removed, 1 files unresolved
4676
b6c819facbe8 evolvecmd: the proper way to deal with conflicts is to resolve them
Anton Shestakov <av6@dwimlabs.net>
parents: 4633
diff changeset
   311
  unresolved merge conflicts
b6c819facbe8 evolvecmd: the proper way to deal with conflicts is to resolve them
Anton Shestakov <av6@dwimlabs.net>
parents: 4633
diff changeset
   312
  (see 'hg help evolve.interrupted')
3852
629558d09898 evolve: raise error.InterventionRequired instead of Abort when conflicts
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3850
diff changeset
   313
  [1]
3806
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   314
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   315
  $ echo watbar > y
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   316
  $ hg resolve -m
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   317
  (no more unresolved files)
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   318
  continue: hg evolve --continue
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   319
  $ hg evolve --continue
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   320
  working directory is now at 68ce3ad10d10
3806
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   321
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   322
  $ hg glog
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   323
  @  21:68ce3ad10d10 added y
3806
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   324
  |   () [bar] draft
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   325
  o  15:806f7694feb1 added foo to x
3806
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   326
  |   () [bar] draft
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   327
  o  10:d34e10c64365 added d
3806
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   328
  |   () [default] draft
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   329
  o  9:65f70b47129d added c
3806
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   330
  |   () [default] draft
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   331
  o  8:f8f130ec5d39 added b
3806
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   332
  |   () [default] draft
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   333
  o  1:c7586e2a9264 added a
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   334
  |   () [default] draft
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   335
  o  0:8fa14d15e168 added hgignore
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   336
      () [default] draft
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   337
5323
417503ef667d tests: add debugobsolete calls before many obslog calls
Martin von Zweigbergk <martinvonz@google.com>
parents: 5123
diff changeset
   338
  $ hg debugobsolete
417503ef667d tests: add debugobsolete calls before many obslog calls
Martin von Zweigbergk <martinvonz@google.com>
parents: 5123
diff changeset
   339
  b1661037fa25511d0b7ccddf405e336f9d7d3424 7ed0642d644bb9ad93d252dd9ffe7b4729febe48 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '8', 'operation': 'amend', 'user': 'test'}
417503ef667d tests: add debugobsolete calls before many obslog calls
Martin von Zweigbergk <martinvonz@google.com>
parents: 5123
diff changeset
   340
  b1661037fa25511d0b7ccddf405e336f9d7d3424 da4b96f4a8d610a85b225583138f681d67e275dd 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'rebase', 'user': 'test'}
417503ef667d tests: add debugobsolete calls before many obslog calls
Martin von Zweigbergk <martinvonz@google.com>
parents: 5123
diff changeset
   341
  da4b96f4a8d610a85b225583138f681d67e275dd 11f849d7159fa30a63dbbc1a6d251a8d996baeb5 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'evolve', 'user': 'test'}
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   342
  7ed0642d644bb9ad93d252dd9ffe7b4729febe48 f8f130ec5d399699738abf984a885baa4fa9f06c 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '2', 'operation': 'evolve', 'user': 'test'}
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   343
  11f849d7159fa30a63dbbc1a6d251a8d996baeb5 f8f130ec5d399699738abf984a885baa4fa9f06c 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '10', 'operation': 'evolve', 'user': 'test'}
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   344
  ca1b80f7960aae2306287bab52b4090c59af8c29 65f70b47129d8466acbdc70bfb1efef3d05388e7 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'evolve', 'user': 'test'}
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   345
  c41c793e0ef1ddb463e85ea9491e377d01127ba2 d34e10c643651d577eef840b427b58d9bd6ae3f0 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'evolve', 'user': 'test'}
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   346
  19fde4a13e167ceb55fcfd7937268027f7e716f0 271db13e4ad11d4ca78b12e74e7341cb74c05a85 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '73', 'operation': 'amend', 'user': 'test'}
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   347
  19fde4a13e167ceb55fcfd7937268027f7e716f0 eb9a1b31b6d812c036ca547aca2931edde6d1e06 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'rebase', 'user': 'test'}
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   348
  271db13e4ad11d4ca78b12e74e7341cb74c05a85 16810a5772dd9a27f4c0302d4e41009a2518588c 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'evolve', 'user': 'test'}
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   349
  eb9a1b31b6d812c036ca547aca2931edde6d1e06 806f7694feb1c58fdd7bf656445f3bd5463a008e 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '75', 'operation': 'evolve', 'user': 'test'}
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   350
  16810a5772dd9a27f4c0302d4e41009a2518588c 806f7694feb1c58fdd7bf656445f3bd5463a008e 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '2', 'operation': 'evolve', 'user': 'test'}
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   351
  6a167ad77c24406c8093b735220c7fe75ed313a6 856e7b6a8392638923637851f93d2e6b4196c37f 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '8', 'operation': 'amend', 'user': 'test'}
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   352
  6a167ad77c24406c8093b735220c7fe75ed313a6 9916514079c2e21fac219b2e31735a065e83ced8 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '68', 'operation': 'rebase', 'user': 'test'}
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   353
  9916514079c2e21fac219b2e31735a065e83ced8 750fd38fec355bf4dc56c36443c9b6d59670946c 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '8', 'operation': 'amend', 'user': 'test'}
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   354
  856e7b6a8392638923637851f93d2e6b4196c37f 1376c32668b4d8f3073bf8dde759afaf4ac512e2 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'evolve', 'user': 'test'}
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   355
  750fd38fec355bf4dc56c36443c9b6d59670946c 68ce3ad10d102c3d5dafb324a1b90a0a356dbb8e 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '10', 'operation': 'evolve', 'user': 'test'}
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   356
  1376c32668b4d8f3073bf8dde759afaf4ac512e2 68ce3ad10d102c3d5dafb324a1b90a0a356dbb8e 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '74', 'operation': 'evolve', 'user': 'test'}
3807
03ccdc753582 evolve: commit the transaction if conflicts occur while merging content-div
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3806
diff changeset
   357
  $ hg obslog -r . --all
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   358
  @    68ce3ad10d10 (21) added y
3809
f06ff8fee2f6 evolvestate: store info about relocation while resolving content-divergence
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3807
diff changeset
   359
  |\
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   360
  x |  1376c32668b4 (20) added y
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   361
  | |    rewritten(meta, branch, content) as 68ce3ad10d10 using evolve by test (Thu Jan 01 00:00:00 1970 +0000)
3807
03ccdc753582 evolve: commit the transaction if conflicts occur while merging content-div
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3806
diff changeset
   362
  | |
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   363
  | x  750fd38fec35 (19) added y
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   364
  | |    rewritten(meta, content) as 68ce3ad10d10 using evolve by test (Thu Jan 01 00:00:00 1970 +0000)
3809
f06ff8fee2f6 evolvestate: store info about relocation while resolving content-divergence
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3807
diff changeset
   365
  | |
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   366
  x |  856e7b6a8392 (17) added y
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   367
  | |    rebased(parent) as 1376c32668b4 using evolve by test (Thu Jan 01 00:00:00 1970 +0000)
3809
f06ff8fee2f6 evolvestate: store info about relocation while resolving content-divergence
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3807
diff changeset
   368
  | |
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   369
  | x  9916514079c2 (18) added y
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   370
  |/     amended(content) as 750fd38fec35 using amend by test (Thu Jan 01 00:00:00 1970 +0000)
3807
03ccdc753582 evolve: commit the transaction if conflicts occur while merging content-div
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3806
diff changeset
   371
  |
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   372
  x  6a167ad77c24 (16) added y
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   373
       amended(content) as 856e7b6a8392 using amend by test (Thu Jan 01 00:00:00 1970 +0000)
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   374
       rewritten(branch, parent) as 9916514079c2 using rebase by test (Thu Jan 01 00:00:00 1970 +0000)
3807
03ccdc753582 evolve: commit the transaction if conflicts occur while merging content-div
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3806
diff changeset
   375
  
03ccdc753582 evolve: commit the transaction if conflicts occur while merging content-div
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3806
diff changeset
   376
3806
99469bb3854e tests: add tests for resolving content-divergence when different parents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3805
diff changeset
   377
checking that relocated commit is there
5325
304de9a04172 tests: avoid referring to commits by hash in a few places
Martin von Zweigbergk <martinvonz@google.com>
parents: 5324
diff changeset
   378
  $ hg exp 20 --hidden
3807
03ccdc753582 evolve: commit the transaction if conflicts occur while merging content-div
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3806
diff changeset
   379
  # HG changeset patch
03ccdc753582 evolve: commit the transaction if conflicts occur while merging content-div
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3806
diff changeset
   380
  # User test
03ccdc753582 evolve: commit the transaction if conflicts occur while merging content-div
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3806
diff changeset
   381
  # Date 0 0
03ccdc753582 evolve: commit the transaction if conflicts occur while merging content-div
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3806
diff changeset
   382
  #      Thu Jan 01 00:00:00 1970 +0000
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   383
  # Node ID 1376c32668b4d8f3073bf8dde759afaf4ac512e2
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   384
  # Parent  806f7694feb1c58fdd7bf656445f3bd5463a008e
3807
03ccdc753582 evolve: commit the transaction if conflicts occur while merging content-div
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3806
diff changeset
   385
  added y
03ccdc753582 evolve: commit the transaction if conflicts occur while merging content-div
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3806
diff changeset
   386
  
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   387
  diff -r 806f7694feb1 -r 1376c32668b4 y
3807
03ccdc753582 evolve: commit the transaction if conflicts occur while merging content-div
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3806
diff changeset
   388
  --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
03ccdc753582 evolve: commit the transaction if conflicts occur while merging content-div
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3806
diff changeset
   389
  +++ b/y	Thu Jan 01 00:00:00 1970 +0000
03ccdc753582 evolve: commit the transaction if conflicts occur while merging content-div
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3806
diff changeset
   390
  @@ -0,0 +1,1 @@
03ccdc753582 evolve: commit the transaction if conflicts occur while merging content-div
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3806
diff changeset
   391
  +bar
3810
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   392
4406
450487b4e1a3 tests: update the title of a test as it's not what it says
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 4181
diff changeset
   393
Testing when the relocation will result in conflicts and merging also:
3810
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   394
----------------------------------------------------------------------
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   395
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   396
  $ hg glog
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   397
  @  21:68ce3ad10d10 added y
3810
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   398
  |   () [bar] draft
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   399
  o  15:806f7694feb1 added foo to x
3810
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   400
  |   () [bar] draft
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   401
  o  10:d34e10c64365 added d
3810
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   402
  |   () [default] draft
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   403
  o  9:65f70b47129d added c
3810
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   404
  |   () [default] draft
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   405
  o  8:f8f130ec5d39 added b
3810
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   406
  |   () [default] draft
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   407
  o  1:c7586e2a9264 added a
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   408
  |   () [default] draft
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   409
  o  0:8fa14d15e168 added hgignore
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   410
      () [default] draft
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   411
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   412
  $ hg up .^^^^
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   413
  0 files updated, 0 files merged, 4 files removed, 0 files unresolved
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   414
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   415
  $ echo z > z
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   416
  $ hg ci -Aqm "added z"
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   417
  $ hg glog -r .
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   418
  @  22:2d5d2b8719d6 added z
3810
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   419
  |   () [default] draft
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   420
  ~
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   421
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   422
  $ echo foo > y
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   423
  $ hg add y
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   424
  $ hg amend
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   425
5325
304de9a04172 tests: avoid referring to commits by hash in a few places
Martin von Zweigbergk <martinvonz@google.com>
parents: 5324
diff changeset
   426
  $ hg up 'predecessors(.)' --hidden
3810
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   427
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   428
  updated to hidden changeset 2d5d2b8719d6
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   429
  (hidden revision '2d5d2b8719d6' was rewritten as: ff9e3b1b6df8)
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   430
  working directory parent is obsolete! (2d5d2b8719d6)
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   431
  (use 'hg evolve' to update to its successor: ff9e3b1b6df8)
5325
304de9a04172 tests: avoid referring to commits by hash in a few places
Martin von Zweigbergk <martinvonz@google.com>
parents: 5324
diff changeset
   432
  $ hg rebase -r . -d 'desc("added y")' --config experimental.evolution.allowdivergence=True
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   433
  rebasing 22:2d5d2b8719d6 "added z"
3810
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   434
  2 new content-divergent changesets
3811
3273b178c202 evolve: store the evolvestate if relocation results in conflicts
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3810
diff changeset
   435
  $ echo bar > z
3273b178c202 evolve: store the evolvestate if relocation results in conflicts
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3810
diff changeset
   436
  $ hg amend
3810
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   437
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   438
  $ hg glog
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   439
  @  25:f8b6462d0f09 added z
3810
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   440
  |   () [bar] draft
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   441
  | *  23:ff9e3b1b6df8 added z
3810
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   442
  | |   () [default] draft
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   443
  o |  21:68ce3ad10d10 added y
3810
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   444
  | |   () [bar] draft
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   445
  o |  15:806f7694feb1 added foo to x
3810
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   446
  | |   () [bar] draft
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   447
  o |  10:d34e10c64365 added d
3810
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   448
  | |   () [default] draft
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   449
  o |  9:65f70b47129d added c
3810
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   450
  |/    () [default] draft
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   451
  o  8:f8f130ec5d39 added b
3810
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   452
  |   () [default] draft
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   453
  o  1:c7586e2a9264 added a
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   454
  |   () [default] draft
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   455
  o  0:8fa14d15e168 added hgignore
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   456
      () [default] draft
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   457
4407
7fd0cbf6190d evolve: change in a test which demonstrate divergence resolution can break
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 4406
diff changeset
   458
  $ hg evolve --content-divergent --any
3846
f9dad99a90d5 evolve: create a new commit instead of amending one of the divergents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3845
diff changeset
   459
  merge:[25] added z
f9dad99a90d5 evolve: create a new commit instead of amending one of the divergents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3845
diff changeset
   460
  with: [23] added z
f9dad99a90d5 evolve: create a new commit instead of amending one of the divergents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3845
diff changeset
   461
  base: [22] added z
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   462
  rebasing "other" content-divergent changeset ff9e3b1b6df8 on 68ce3ad10d10
3810
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   463
  merging y
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   464
  warning: conflicts while merging y! (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: 4633
diff changeset
   465
  unresolved merge conflicts
b6c819facbe8 evolvecmd: the proper way to deal with conflicts is to resolve them
Anton Shestakov <av6@dwimlabs.net>
parents: 4633
diff changeset
   466
  (see 'hg help evolve.interrupted')
3853
796334340cad evolve: make one missed error to align other error messages
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3852
diff changeset
   467
  [1]
3810
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   468
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   469
  $ hg diff
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   470
  diff -r 68ce3ad10d10 y
3810
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   471
  --- a/y	Thu Jan 01 00:00:00 1970 +0000
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   472
  +++ b/y	Thu Jan 01 00:00:00 1970 +0000
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   473
  @@ -1,1 +1,5 @@
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   474
  +<<<<<<< destination: 68ce3ad10d10 bar - test: added y
3810
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   475
   watbar
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   476
  +=======
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   477
  +foo
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   478
  +>>>>>>> evolving:    ff9e3b1b6df8 - test: added z
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   479
  diff -r 68ce3ad10d10 z
3810
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   480
  --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   481
  +++ b/z	Thu Jan 01 00:00:00 1970 +0000
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   482
  @@ -0,0 +1,1 @@
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   483
  +z
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   484
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   485
  $ echo foo > y
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   486
  $ hg resolve -m
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   487
  (no more unresolved files)
3811
3273b178c202 evolve: store the evolvestate if relocation results in conflicts
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3810
diff changeset
   488
  continue: hg evolve --continue
3810
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   489
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   490
  $ hg evolve --continue
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   491
  evolving 23:ff9e3b1b6df8 "added z"
3882
55b8c7e7e352 compat: temporarily move copies fix to compat.py
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3881
diff changeset
   492
  merging y
55b8c7e7e352 compat: temporarily move copies fix to compat.py
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3881
diff changeset
   493
  warning: conflicts while merging y! (edit, then use 'hg resolve --mark')
55b8c7e7e352 compat: temporarily move copies fix to compat.py
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3881
diff changeset
   494
  0 files updated, 0 files merged, 0 files removed, 1 files unresolved
4676
b6c819facbe8 evolvecmd: the proper way to deal with conflicts is to resolve them
Anton Shestakov <av6@dwimlabs.net>
parents: 4633
diff changeset
   495
  unresolved merge conflicts
b6c819facbe8 evolvecmd: the proper way to deal with conflicts is to resolve them
Anton Shestakov <av6@dwimlabs.net>
parents: 4633
diff changeset
   496
  (see 'hg help evolve.interrupted')
3881
9cf45b94f977 evolve: continue conflicted relocation content-divergence
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3853
diff changeset
   497
  [1]
9cf45b94f977 evolve: continue conflicted relocation content-divergence
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3853
diff changeset
   498
9cf45b94f977 evolve: continue conflicted relocation content-divergence
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3853
diff changeset
   499
  $ hg diff
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   500
  diff -r f8b6462d0f09 y
3882
55b8c7e7e352 compat: temporarily move copies fix to compat.py
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3881
diff changeset
   501
  --- a/y	Thu Jan 01 00:00:00 1970 +0000
55b8c7e7e352 compat: temporarily move copies fix to compat.py
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3881
diff changeset
   502
  +++ b/y	Thu Jan 01 00:00:00 1970 +0000
55b8c7e7e352 compat: temporarily move copies fix to compat.py
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3881
diff changeset
   503
  @@ -1,1 +1,5 @@
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   504
  +<<<<<<< local: f8b6462d0f09 bar - test: added z
3882
55b8c7e7e352 compat: temporarily move copies fix to compat.py
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3881
diff changeset
   505
   watbar
55b8c7e7e352 compat: temporarily move copies fix to compat.py
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3881
diff changeset
   506
  +=======
55b8c7e7e352 compat: temporarily move copies fix to compat.py
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3881
diff changeset
   507
  +foo
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   508
  +>>>>>>> other: 53bfc763e92e - test: added z
3881
9cf45b94f977 evolve: continue conflicted relocation content-divergence
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3853
diff changeset
   509
9cf45b94f977 evolve: continue conflicted relocation content-divergence
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3853
diff changeset
   510
  $ echo foo > y
9cf45b94f977 evolve: continue conflicted relocation content-divergence
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3853
diff changeset
   511
  $ hg resolve -m
3882
55b8c7e7e352 compat: temporarily move copies fix to compat.py
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3881
diff changeset
   512
  (no more unresolved files)
55b8c7e7e352 compat: temporarily move copies fix to compat.py
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3881
diff changeset
   513
  continue: hg evolve --continue
3881
9cf45b94f977 evolve: continue conflicted relocation content-divergence
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3853
diff changeset
   514
  $ hg evolve --continue
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   515
  working directory is now at d17538c7d8eb
3810
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   516
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   517
  $ hg glog
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   518
  @  27:d17538c7d8eb added z
3882
55b8c7e7e352 compat: temporarily move copies fix to compat.py
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3881
diff changeset
   519
  |   () [bar] draft
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   520
  o  21:68ce3ad10d10 added y
3810
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   521
  |   () [bar] draft
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   522
  o  15:806f7694feb1 added foo to x
3882
55b8c7e7e352 compat: temporarily move copies fix to compat.py
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3881
diff changeset
   523
  |   () [bar] draft
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   524
  o  10:d34e10c64365 added d
3882
55b8c7e7e352 compat: temporarily move copies fix to compat.py
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3881
diff changeset
   525
  |   () [default] draft
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   526
  o  9:65f70b47129d added c
3882
55b8c7e7e352 compat: temporarily move copies fix to compat.py
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3881
diff changeset
   527
  |   () [default] draft
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   528
  o  8:f8f130ec5d39 added b
3810
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   529
  |   () [default] draft
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   530
  o  1:c7586e2a9264 added a
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   531
  |   () [default] draft
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   532
  o  0:8fa14d15e168 added hgignore
04fe01b0c0d0 tests: add more test of resolution of content-divergent changesets
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3809
diff changeset
   533
      () [default] draft
3811
3273b178c202 evolve: store the evolvestate if relocation results in conflicts
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3810
diff changeset
   534
3273b178c202 evolve: store the evolvestate if relocation results in conflicts
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3810
diff changeset
   535
  $ hg exp
3273b178c202 evolve: store the evolvestate if relocation results in conflicts
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3810
diff changeset
   536
  # HG changeset patch
3273b178c202 evolve: store the evolvestate if relocation results in conflicts
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3810
diff changeset
   537
  # User test
3273b178c202 evolve: store the evolvestate if relocation results in conflicts
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3810
diff changeset
   538
  # Date 0 0
3273b178c202 evolve: store the evolvestate if relocation results in conflicts
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3810
diff changeset
   539
  #      Thu Jan 01 00:00:00 1970 +0000
3881
9cf45b94f977 evolve: continue conflicted relocation content-divergence
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3853
diff changeset
   540
  # Branch bar
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   541
  # Node ID d17538c7d8eb057a9ed807d29ff951e9f7940e83
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   542
  # Parent  68ce3ad10d102c3d5dafb324a1b90a0a356dbb8e
3882
55b8c7e7e352 compat: temporarily move copies fix to compat.py
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3881
diff changeset
   543
  added z
3811
3273b178c202 evolve: store the evolvestate if relocation results in conflicts
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3810
diff changeset
   544
  
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   545
  diff -r 68ce3ad10d10 -r d17538c7d8eb y
3882
55b8c7e7e352 compat: temporarily move copies fix to compat.py
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3881
diff changeset
   546
  --- a/y	Thu Jan 01 00:00:00 1970 +0000
3811
3273b178c202 evolve: store the evolvestate if relocation results in conflicts
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3810
diff changeset
   547
  +++ b/y	Thu Jan 01 00:00:00 1970 +0000
3882
55b8c7e7e352 compat: temporarily move copies fix to compat.py
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3881
diff changeset
   548
  @@ -1,1 +1,1 @@
55b8c7e7e352 compat: temporarily move copies fix to compat.py
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3881
diff changeset
   549
  -watbar
55b8c7e7e352 compat: temporarily move copies fix to compat.py
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3881
diff changeset
   550
  +foo
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   551
  diff -r 68ce3ad10d10 -r d17538c7d8eb z
3882
55b8c7e7e352 compat: temporarily move copies fix to compat.py
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3881
diff changeset
   552
  --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
55b8c7e7e352 compat: temporarily move copies fix to compat.py
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3881
diff changeset
   553
  +++ b/z	Thu Jan 01 00:00:00 1970 +0000
3811
3273b178c202 evolve: store the evolvestate if relocation results in conflicts
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3810
diff changeset
   554
  @@ -0,0 +1,1 @@
3882
55b8c7e7e352 compat: temporarily move copies fix to compat.py
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3881
diff changeset
   555
  +bar
3844
48fbccfd1dff tests: add test of resolution of content-divergent stacks
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3842
diff changeset
   556
5324
c834fdb87f90 tests: add more verification of output to divergence tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 5323
diff changeset
   557
  $ hg debugobsolete
c834fdb87f90 tests: add more verification of output to divergence tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 5323
diff changeset
   558
  b1661037fa25511d0b7ccddf405e336f9d7d3424 7ed0642d644bb9ad93d252dd9ffe7b4729febe48 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '8', 'operation': 'amend', 'user': 'test'}
c834fdb87f90 tests: add more verification of output to divergence tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 5323
diff changeset
   559
  b1661037fa25511d0b7ccddf405e336f9d7d3424 da4b96f4a8d610a85b225583138f681d67e275dd 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'rebase', 'user': 'test'}
c834fdb87f90 tests: add more verification of output to divergence tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 5323
diff changeset
   560
  da4b96f4a8d610a85b225583138f681d67e275dd 11f849d7159fa30a63dbbc1a6d251a8d996baeb5 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'evolve', 'user': 'test'}
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   561
  7ed0642d644bb9ad93d252dd9ffe7b4729febe48 f8f130ec5d399699738abf984a885baa4fa9f06c 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '2', 'operation': 'evolve', 'user': 'test'}
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   562
  11f849d7159fa30a63dbbc1a6d251a8d996baeb5 f8f130ec5d399699738abf984a885baa4fa9f06c 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '10', 'operation': 'evolve', 'user': 'test'}
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   563
  ca1b80f7960aae2306287bab52b4090c59af8c29 65f70b47129d8466acbdc70bfb1efef3d05388e7 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'evolve', 'user': 'test'}
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   564
  c41c793e0ef1ddb463e85ea9491e377d01127ba2 d34e10c643651d577eef840b427b58d9bd6ae3f0 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'evolve', 'user': 'test'}
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   565
  19fde4a13e167ceb55fcfd7937268027f7e716f0 271db13e4ad11d4ca78b12e74e7341cb74c05a85 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '73', 'operation': 'amend', 'user': 'test'}
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   566
  19fde4a13e167ceb55fcfd7937268027f7e716f0 eb9a1b31b6d812c036ca547aca2931edde6d1e06 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'rebase', 'user': 'test'}
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   567
  271db13e4ad11d4ca78b12e74e7341cb74c05a85 16810a5772dd9a27f4c0302d4e41009a2518588c 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'evolve', 'user': 'test'}
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   568
  eb9a1b31b6d812c036ca547aca2931edde6d1e06 806f7694feb1c58fdd7bf656445f3bd5463a008e 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '75', 'operation': 'evolve', 'user': 'test'}
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   569
  16810a5772dd9a27f4c0302d4e41009a2518588c 806f7694feb1c58fdd7bf656445f3bd5463a008e 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '2', 'operation': 'evolve', 'user': 'test'}
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   570
  6a167ad77c24406c8093b735220c7fe75ed313a6 856e7b6a8392638923637851f93d2e6b4196c37f 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '8', 'operation': 'amend', 'user': 'test'}
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   571
  6a167ad77c24406c8093b735220c7fe75ed313a6 9916514079c2e21fac219b2e31735a065e83ced8 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '68', 'operation': 'rebase', 'user': 'test'}
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   572
  9916514079c2e21fac219b2e31735a065e83ced8 750fd38fec355bf4dc56c36443c9b6d59670946c 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '8', 'operation': 'amend', 'user': 'test'}
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   573
  856e7b6a8392638923637851f93d2e6b4196c37f 1376c32668b4d8f3073bf8dde759afaf4ac512e2 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'evolve', 'user': 'test'}
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   574
  750fd38fec355bf4dc56c36443c9b6d59670946c 68ce3ad10d102c3d5dafb324a1b90a0a356dbb8e 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '10', 'operation': 'evolve', 'user': 'test'}
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   575
  1376c32668b4d8f3073bf8dde759afaf4ac512e2 68ce3ad10d102c3d5dafb324a1b90a0a356dbb8e 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '74', 'operation': 'evolve', 'user': 'test'}
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   576
  2d5d2b8719d63d07b1c4bf5b5ea30b924b00a83e ff9e3b1b6df81fe45e8aad1fa86145588da0d20f 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '8', 'operation': 'amend', 'user': 'test'}
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   577
  2d5d2b8719d63d07b1c4bf5b5ea30b924b00a83e 30de78f605eb1cf2f31edfe9c34789118e7f47a0 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '68', 'operation': 'rebase', 'user': 'test'}
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   578
  30de78f605eb1cf2f31edfe9c34789118e7f47a0 f8b6462d0f09ea491c801a49094cb452d4197333 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '8', 'operation': 'amend', 'user': 'test'}
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   579
  ff9e3b1b6df81fe45e8aad1fa86145588da0d20f 53bfc763e92e5ce04f978fde72667eab1d7e01fb 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '12', 'operation': 'evolve', 'user': 'test'}
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   580
  f8b6462d0f09ea491c801a49094cb452d4197333 d17538c7d8eb057a9ed807d29ff951e9f7940e83 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '10', 'operation': 'evolve', 'user': 'test'}
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   581
  53bfc763e92e5ce04f978fde72667eab1d7e01fb d17538c7d8eb057a9ed807d29ff951e9f7940e83 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '74', 'operation': 'evolve', 'user': 'test'}
5324
c834fdb87f90 tests: add more verification of output to divergence tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 5323
diff changeset
   582
  $ hg obslog --all
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   583
  @    d17538c7d8eb (27) added z
5324
c834fdb87f90 tests: add more verification of output to divergence tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 5323
diff changeset
   584
  |\
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   585
  x |  53bfc763e92e (26) added z
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   586
  | |    rewritten(meta, branch, content) as d17538c7d8eb using evolve by test (Thu Jan 01 00:00:00 1970 +0000)
5324
c834fdb87f90 tests: add more verification of output to divergence tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 5323
diff changeset
   587
  | |
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   588
  | x  f8b6462d0f09 (25) added z
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   589
  | |    rewritten(meta, content) as d17538c7d8eb using evolve by test (Thu Jan 01 00:00:00 1970 +0000)
5324
c834fdb87f90 tests: add more verification of output to divergence tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 5323
diff changeset
   590
  | |
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   591
  | x  30de78f605eb (24) added z
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   592
  | |    amended(content) as f8b6462d0f09 using amend by test (Thu Jan 01 00:00:00 1970 +0000)
5324
c834fdb87f90 tests: add more verification of output to divergence tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 5323
diff changeset
   593
  | |
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   594
  x |  ff9e3b1b6df8 (23) added z
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   595
  |/     rewritten(parent, content) as 53bfc763e92e using evolve by test (Thu Jan 01 00:00:00 1970 +0000)
5324
c834fdb87f90 tests: add more verification of output to divergence tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 5323
diff changeset
   596
  |
5341
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   597
  x  2d5d2b8719d6 (22) added z
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   598
       rewritten(branch, parent) as 30de78f605eb using rebase by test (Thu Jan 01 00:00:00 1970 +0000)
13376ca93fa3 evolve: always create commit when resolving divergence
Martin von Zweigbergk <martinvonz@google.com>
parents: 5325
diff changeset
   599
       amended(content) as ff9e3b1b6df8 using amend by test (Thu Jan 01 00:00:00 1970 +0000)
5324
c834fdb87f90 tests: add more verification of output to divergence tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 5323
diff changeset
   600
  
c834fdb87f90 tests: add more verification of output to divergence tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 5323
diff changeset
   601
3844
48fbccfd1dff tests: add test of resolution of content-divergent stacks
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3842
diff changeset
   602
  $ cd ..
5342
265e029785ae tests: show crash from divergence resolution resulting in empty commit
Martin von Zweigbergk <martinvonz@google.com>
parents: 5341
diff changeset
   603
265e029785ae tests: show crash from divergence resolution resulting in empty commit
Martin von Zweigbergk <martinvonz@google.com>
parents: 5341
diff changeset
   604
Testing when relocation results in nothing to commit
265e029785ae tests: show crash from divergence resolution resulting in empty commit
Martin von Zweigbergk <martinvonz@google.com>
parents: 5341
diff changeset
   605
----------------------------------------------------
265e029785ae tests: show crash from divergence resolution resulting in empty commit
Martin von Zweigbergk <martinvonz@google.com>
parents: 5341
diff changeset
   606
265e029785ae tests: show crash from divergence resolution resulting in empty commit
Martin von Zweigbergk <martinvonz@google.com>
parents: 5341
diff changeset
   607
Set up a repo where relocation results in no changes to commit because the
265e029785ae tests: show crash from divergence resolution resulting in empty commit
Martin von Zweigbergk <martinvonz@google.com>
parents: 5341
diff changeset
   608
changes from the relocated node are already in the destination.
265e029785ae tests: show crash from divergence resolution resulting in empty commit
Martin von Zweigbergk <martinvonz@google.com>
parents: 5341
diff changeset
   609
265e029785ae tests: show crash from divergence resolution resulting in empty commit
Martin von Zweigbergk <martinvonz@google.com>
parents: 5341
diff changeset
   610
  $ hg init nothing-to-commit
265e029785ae tests: show crash from divergence resolution resulting in empty commit
Martin von Zweigbergk <martinvonz@google.com>
parents: 5341
diff changeset
   611
  $ cd nothing-to-commit
265e029785ae tests: show crash from divergence resolution resulting in empty commit
Martin von Zweigbergk <martinvonz@google.com>
parents: 5341
diff changeset
   612
  $ echo 0 > a
265e029785ae tests: show crash from divergence resolution resulting in empty commit
Martin von Zweigbergk <martinvonz@google.com>
parents: 5341
diff changeset
   613
  $ hg ci -Aqm initial
265e029785ae tests: show crash from divergence resolution resulting in empty commit
Martin von Zweigbergk <martinvonz@google.com>
parents: 5341
diff changeset
   614
  $ echo 1 > a
265e029785ae tests: show crash from divergence resolution resulting in empty commit
Martin von Zweigbergk <martinvonz@google.com>
parents: 5341
diff changeset
   615
  $ hg ci -Aqm upstream
265e029785ae tests: show crash from divergence resolution resulting in empty commit
Martin von Zweigbergk <martinvonz@google.com>
parents: 5341
diff changeset
   616
  $ hg prev -q
265e029785ae tests: show crash from divergence resolution resulting in empty commit
Martin von Zweigbergk <martinvonz@google.com>
parents: 5341
diff changeset
   617
265e029785ae tests: show crash from divergence resolution resulting in empty commit
Martin von Zweigbergk <martinvonz@google.com>
parents: 5341
diff changeset
   618
Create the source of divergence.
265e029785ae tests: show crash from divergence resolution resulting in empty commit
Martin von Zweigbergk <martinvonz@google.com>
parents: 5341
diff changeset
   619
  $ echo 0 > b
265e029785ae tests: show crash from divergence resolution resulting in empty commit
Martin von Zweigbergk <martinvonz@google.com>
parents: 5341
diff changeset
   620
  $ hg ci -Aqm divergent
265e029785ae tests: show crash from divergence resolution resulting in empty commit
Martin von Zweigbergk <martinvonz@google.com>
parents: 5341
diff changeset
   621
265e029785ae tests: show crash from divergence resolution resulting in empty commit
Martin von Zweigbergk <martinvonz@google.com>
parents: 5341
diff changeset
   622
The first side of the divergence get rebased on top of upstream.
265e029785ae tests: show crash from divergence resolution resulting in empty commit
Martin von Zweigbergk <martinvonz@google.com>
parents: 5341
diff changeset
   623
  $ hg rebase -r . -d 'desc("upstream")'
265e029785ae tests: show crash from divergence resolution resulting in empty commit
Martin von Zweigbergk <martinvonz@google.com>
parents: 5341
diff changeset
   624
  rebasing 2:898ddd4443b3 "divergent" (tip)
265e029785ae tests: show crash from divergence resolution resulting in empty commit
Martin von Zweigbergk <martinvonz@google.com>
parents: 5341
diff changeset
   625
  $ hg --hidden co 2 -q
265e029785ae tests: show crash from divergence resolution resulting in empty commit
Martin von Zweigbergk <martinvonz@google.com>
parents: 5341
diff changeset
   626
  updated to hidden changeset 898ddd4443b3
265e029785ae tests: show crash from divergence resolution resulting in empty commit
Martin von Zweigbergk <martinvonz@google.com>
parents: 5341
diff changeset
   627
  (hidden revision '898ddd4443b3' was rewritten as: befae6138569)
265e029785ae tests: show crash from divergence resolution resulting in empty commit
Martin von Zweigbergk <martinvonz@google.com>
parents: 5341
diff changeset
   628
  working directory parent is obsolete! (898ddd4443b3)
265e029785ae tests: show crash from divergence resolution resulting in empty commit
Martin von Zweigbergk <martinvonz@google.com>
parents: 5341
diff changeset
   629
265e029785ae tests: show crash from divergence resolution resulting in empty commit
Martin von Zweigbergk <martinvonz@google.com>
parents: 5341
diff changeset
   630
The other side of the divergence gets amended so it matches upstream.
265e029785ae tests: show crash from divergence resolution resulting in empty commit
Martin von Zweigbergk <martinvonz@google.com>
parents: 5341
diff changeset
   631
Relocation (onto upstream) will therefore result in no changes to commit.
265e029785ae tests: show crash from divergence resolution resulting in empty commit
Martin von Zweigbergk <martinvonz@google.com>
parents: 5341
diff changeset
   632
  $ hg revert -r 'desc("upstream")' --all
265e029785ae tests: show crash from divergence resolution resulting in empty commit
Martin von Zweigbergk <martinvonz@google.com>
parents: 5341
diff changeset
   633
  removing b
265e029785ae tests: show crash from divergence resolution resulting in empty commit
Martin von Zweigbergk <martinvonz@google.com>
parents: 5341
diff changeset
   634
  reverting a
265e029785ae tests: show crash from divergence resolution resulting in empty commit
Martin von Zweigbergk <martinvonz@google.com>
parents: 5341
diff changeset
   635
  $ hg amend --config experimental.evolution.allowdivergence=True
265e029785ae tests: show crash from divergence resolution resulting in empty commit
Martin von Zweigbergk <martinvonz@google.com>
parents: 5341
diff changeset
   636
  2 new content-divergent changesets
265e029785ae tests: show crash from divergence resolution resulting in empty commit
Martin von Zweigbergk <martinvonz@google.com>
parents: 5341
diff changeset
   637
265e029785ae tests: show crash from divergence resolution resulting in empty commit
Martin von Zweigbergk <martinvonz@google.com>
parents: 5341
diff changeset
   638
Add a commit on top. This one should become an orphan. Evolving it later
265e029785ae tests: show crash from divergence resolution resulting in empty commit
Martin von Zweigbergk <martinvonz@google.com>
parents: 5341
diff changeset
   639
should put it on top of the other divergent side (the one that's on top of
265e029785ae tests: show crash from divergence resolution resulting in empty commit
Martin von Zweigbergk <martinvonz@google.com>
parents: 5341
diff changeset
   640
upstream)
265e029785ae tests: show crash from divergence resolution resulting in empty commit
Martin von Zweigbergk <martinvonz@google.com>
parents: 5341
diff changeset
   641
  $ echo 0 > c
265e029785ae tests: show crash from divergence resolution resulting in empty commit
Martin von Zweigbergk <martinvonz@google.com>
parents: 5341
diff changeset
   642
  $ hg ci -Aqm child
265e029785ae tests: show crash from divergence resolution resulting in empty commit
Martin von Zweigbergk <martinvonz@google.com>
parents: 5341
diff changeset
   643
  $ hg co -q null
265e029785ae tests: show crash from divergence resolution resulting in empty commit
Martin von Zweigbergk <martinvonz@google.com>
parents: 5341
diff changeset
   644
  $ hg glog
265e029785ae tests: show crash from divergence resolution resulting in empty commit
Martin von Zweigbergk <martinvonz@google.com>
parents: 5341
diff changeset
   645
  o  5:88473f9137d1 child
265e029785ae tests: show crash from divergence resolution resulting in empty commit
Martin von Zweigbergk <martinvonz@google.com>
parents: 5341
diff changeset
   646
  |   () [default] draft
265e029785ae tests: show crash from divergence resolution resulting in empty commit
Martin von Zweigbergk <martinvonz@google.com>
parents: 5341
diff changeset
   647
  *  4:4cc21313ecee divergent
265e029785ae tests: show crash from divergence resolution resulting in empty commit
Martin von Zweigbergk <martinvonz@google.com>
parents: 5341
diff changeset
   648
  |   () [default] draft
265e029785ae tests: show crash from divergence resolution resulting in empty commit
Martin von Zweigbergk <martinvonz@google.com>
parents: 5341
diff changeset
   649
  | *  3:befae6138569 divergent
265e029785ae tests: show crash from divergence resolution resulting in empty commit
Martin von Zweigbergk <martinvonz@google.com>
parents: 5341
diff changeset
   650
  | |   () [default] draft
265e029785ae tests: show crash from divergence resolution resulting in empty commit
Martin von Zweigbergk <martinvonz@google.com>
parents: 5341
diff changeset
   651
  | o  1:33c576d20069 upstream
265e029785ae tests: show crash from divergence resolution resulting in empty commit
Martin von Zweigbergk <martinvonz@google.com>
parents: 5341
diff changeset
   652
  |/    () [default] draft
265e029785ae tests: show crash from divergence resolution resulting in empty commit
Martin von Zweigbergk <martinvonz@google.com>
parents: 5341
diff changeset
   653
  o  0:98a3f8f02ba7 initial
265e029785ae tests: show crash from divergence resolution resulting in empty commit
Martin von Zweigbergk <martinvonz@google.com>
parents: 5341
diff changeset
   654
      () [default] draft
5343
ebfd0d875600 evolve: handle relocation during divergence resolution producing no changes
Martin von Zweigbergk <martinvonz@google.com>
parents: 5342
diff changeset
   655
  $ hg evolve --content-divergent
ebfd0d875600 evolve: handle relocation during divergence resolution producing no changes
Martin von Zweigbergk <martinvonz@google.com>
parents: 5342
diff changeset
   656
  merge:[3] divergent
ebfd0d875600 evolve: handle relocation during divergence resolution producing no changes
Martin von Zweigbergk <martinvonz@google.com>
parents: 5342
diff changeset
   657
  with: [4] divergent
ebfd0d875600 evolve: handle relocation during divergence resolution producing no changes
Martin von Zweigbergk <martinvonz@google.com>
parents: 5342
diff changeset
   658
  base: [2] divergent
ebfd0d875600 evolve: handle relocation during divergence resolution producing no changes
Martin von Zweigbergk <martinvonz@google.com>
parents: 5342
diff changeset
   659
  rebasing "other" content-divergent changeset 4cc21313ecee on 33c576d20069
ebfd0d875600 evolve: handle relocation during divergence resolution producing no changes
Martin von Zweigbergk <martinvonz@google.com>
parents: 5342
diff changeset
   660
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
ebfd0d875600 evolve: handle relocation during divergence resolution producing no changes
Martin von Zweigbergk <martinvonz@google.com>
parents: 5342
diff changeset
   661
  1 new orphan changesets
ebfd0d875600 evolve: handle relocation during divergence resolution producing no changes
Martin von Zweigbergk <martinvonz@google.com>
parents: 5342
diff changeset
   662
  $ hg glog
ebfd0d875600 evolve: handle relocation during divergence resolution producing no changes
Martin von Zweigbergk <martinvonz@google.com>
parents: 5342
diff changeset
   663
  o  7:dfabf49594ff divergent
ebfd0d875600 evolve: handle relocation during divergence resolution producing no changes
Martin von Zweigbergk <martinvonz@google.com>
parents: 5342
diff changeset
   664
  |   () [default] draft
ebfd0d875600 evolve: handle relocation during divergence resolution producing no changes
Martin von Zweigbergk <martinvonz@google.com>
parents: 5342
diff changeset
   665
  | *  5:88473f9137d1 child
ebfd0d875600 evolve: handle relocation during divergence resolution producing no changes
Martin von Zweigbergk <martinvonz@google.com>
parents: 5342
diff changeset
   666
  | |   () [default] draft
ebfd0d875600 evolve: handle relocation during divergence resolution producing no changes
Martin von Zweigbergk <martinvonz@google.com>
parents: 5342
diff changeset
   667
  | x  4:4cc21313ecee divergent
ebfd0d875600 evolve: handle relocation during divergence resolution producing no changes
Martin von Zweigbergk <martinvonz@google.com>
parents: 5342
diff changeset
   668
  | |   () [default] draft
ebfd0d875600 evolve: handle relocation during divergence resolution producing no changes
Martin von Zweigbergk <martinvonz@google.com>
parents: 5342
diff changeset
   669
  o |  1:33c576d20069 upstream
ebfd0d875600 evolve: handle relocation during divergence resolution producing no changes
Martin von Zweigbergk <martinvonz@google.com>
parents: 5342
diff changeset
   670
  |/    () [default] draft
ebfd0d875600 evolve: handle relocation during divergence resolution producing no changes
Martin von Zweigbergk <martinvonz@google.com>
parents: 5342
diff changeset
   671
  o  0:98a3f8f02ba7 initial
ebfd0d875600 evolve: handle relocation during divergence resolution producing no changes
Martin von Zweigbergk <martinvonz@google.com>
parents: 5342
diff changeset
   672
      () [default] draft
5342
265e029785ae tests: show crash from divergence resolution resulting in empty commit
Martin von Zweigbergk <martinvonz@google.com>
parents: 5341
diff changeset
   673
5343
ebfd0d875600 evolve: handle relocation during divergence resolution producing no changes
Martin von Zweigbergk <martinvonz@google.com>
parents: 5342
diff changeset
   674
  $ hg evolve --any
ebfd0d875600 evolve: handle relocation during divergence resolution producing no changes
Martin von Zweigbergk <martinvonz@google.com>
parents: 5342
diff changeset
   675
  move:[5] child
ebfd0d875600 evolve: handle relocation during divergence resolution producing no changes
Martin von Zweigbergk <martinvonz@google.com>
parents: 5342
diff changeset
   676
  atop:[7] divergent
ebfd0d875600 evolve: handle relocation during divergence resolution producing no changes
Martin von Zweigbergk <martinvonz@google.com>
parents: 5342
diff changeset
   677
  $ hg glog
ebfd0d875600 evolve: handle relocation during divergence resolution producing no changes
Martin von Zweigbergk <martinvonz@google.com>
parents: 5342
diff changeset
   678
  o  8:6da8b7911364 child
ebfd0d875600 evolve: handle relocation during divergence resolution producing no changes
Martin von Zweigbergk <martinvonz@google.com>
parents: 5342
diff changeset
   679
  |   () [default] draft
ebfd0d875600 evolve: handle relocation during divergence resolution producing no changes
Martin von Zweigbergk <martinvonz@google.com>
parents: 5342
diff changeset
   680
  o  7:dfabf49594ff divergent
ebfd0d875600 evolve: handle relocation during divergence resolution producing no changes
Martin von Zweigbergk <martinvonz@google.com>
parents: 5342
diff changeset
   681
  |   () [default] draft
ebfd0d875600 evolve: handle relocation during divergence resolution producing no changes
Martin von Zweigbergk <martinvonz@google.com>
parents: 5342
diff changeset
   682
  o  1:33c576d20069 upstream
ebfd0d875600 evolve: handle relocation during divergence resolution producing no changes
Martin von Zweigbergk <martinvonz@google.com>
parents: 5342
diff changeset
   683
  |   () [default] draft
ebfd0d875600 evolve: handle relocation during divergence resolution producing no changes
Martin von Zweigbergk <martinvonz@google.com>
parents: 5342
diff changeset
   684
  o  0:98a3f8f02ba7 initial
ebfd0d875600 evolve: handle relocation during divergence resolution producing no changes
Martin von Zweigbergk <martinvonz@google.com>
parents: 5342
diff changeset
   685
      () [default] draft
ebfd0d875600 evolve: handle relocation during divergence resolution producing no changes
Martin von Zweigbergk <martinvonz@google.com>
parents: 5342
diff changeset
   686
  $ hg debugobsolete
ebfd0d875600 evolve: handle relocation during divergence resolution producing no changes
Martin von Zweigbergk <martinvonz@google.com>
parents: 5342
diff changeset
   687
  898ddd4443b3d5520bf48f22f9411d5a0751cf2e befae61385695f1ae4b78b030ad91075b2b523ef 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'rebase', 'user': 'test'}
ebfd0d875600 evolve: handle relocation during divergence resolution producing no changes
Martin von Zweigbergk <martinvonz@google.com>
parents: 5342
diff changeset
   688
  898ddd4443b3d5520bf48f22f9411d5a0751cf2e 4cc21313ecee97ce33265514a0596a192bfa6b3f 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '8', 'operation': 'amend', 'user': 'test'}
ebfd0d875600 evolve: handle relocation during divergence resolution producing no changes
Martin von Zweigbergk <martinvonz@google.com>
parents: 5342
diff changeset
   689
  4cc21313ecee97ce33265514a0596a192bfa6b3f bf4fe3a3afeb14c338094f41a35863921856592f 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '12', 'operation': 'evolve', 'user': 'test'}
ebfd0d875600 evolve: handle relocation during divergence resolution producing no changes
Martin von Zweigbergk <martinvonz@google.com>
parents: 5342
diff changeset
   690
  befae61385695f1ae4b78b030ad91075b2b523ef dfabf49594ff9aa09d71ca6cc8e574e84bf0e651 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '10', 'operation': 'evolve', 'user': 'test'}
ebfd0d875600 evolve: handle relocation during divergence resolution producing no changes
Martin von Zweigbergk <martinvonz@google.com>
parents: 5342
diff changeset
   691
  bf4fe3a3afeb14c338094f41a35863921856592f dfabf49594ff9aa09d71ca6cc8e574e84bf0e651 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '2', 'operation': 'evolve', 'user': 'test'}
ebfd0d875600 evolve: handle relocation during divergence resolution producing no changes
Martin von Zweigbergk <martinvonz@google.com>
parents: 5342
diff changeset
   692
  88473f9137d12e90055d30bbb9b78dd786520870 6da8b7911364bc7f4cde60ba07e57213c6dfb14e 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'evolve', 'user': 'test'}
ebfd0d875600 evolve: handle relocation during divergence resolution producing no changes
Martin von Zweigbergk <martinvonz@google.com>
parents: 5342
diff changeset
   693
  $ hg obslog -r 'desc("divergent")' --all
ebfd0d875600 evolve: handle relocation during divergence resolution producing no changes
Martin von Zweigbergk <martinvonz@google.com>
parents: 5342
diff changeset
   694
  o    dfabf49594ff (7) divergent
ebfd0d875600 evolve: handle relocation during divergence resolution producing no changes
Martin von Zweigbergk <martinvonz@google.com>
parents: 5342
diff changeset
   695
  |\
ebfd0d875600 evolve: handle relocation during divergence resolution producing no changes
Martin von Zweigbergk <martinvonz@google.com>
parents: 5342
diff changeset
   696
  x |  befae6138569 (3) divergent
ebfd0d875600 evolve: handle relocation during divergence resolution producing no changes
Martin von Zweigbergk <martinvonz@google.com>
parents: 5342
diff changeset
   697
  | |    rewritten(meta, content) as dfabf49594ff using evolve by test (Thu Jan 01 00:00:00 1970 +0000)
ebfd0d875600 evolve: handle relocation during divergence resolution producing no changes
Martin von Zweigbergk <martinvonz@google.com>
parents: 5342
diff changeset
   698
  | |
ebfd0d875600 evolve: handle relocation during divergence resolution producing no changes
Martin von Zweigbergk <martinvonz@google.com>
parents: 5342
diff changeset
   699
  | x  bf4fe3a3afeb (6) divergent
ebfd0d875600 evolve: handle relocation during divergence resolution producing no changes
Martin von Zweigbergk <martinvonz@google.com>
parents: 5342
diff changeset
   700
  | |    meta-changed(meta) as dfabf49594ff using evolve by test (Thu Jan 01 00:00:00 1970 +0000)
ebfd0d875600 evolve: handle relocation during divergence resolution producing no changes
Martin von Zweigbergk <martinvonz@google.com>
parents: 5342
diff changeset
   701
  | |
ebfd0d875600 evolve: handle relocation during divergence resolution producing no changes
Martin von Zweigbergk <martinvonz@google.com>
parents: 5342
diff changeset
   702
  | x  4cc21313ecee (4) divergent
ebfd0d875600 evolve: handle relocation during divergence resolution producing no changes
Martin von Zweigbergk <martinvonz@google.com>
parents: 5342
diff changeset
   703
  |/     rewritten(parent, content) as bf4fe3a3afeb using evolve by test (Thu Jan 01 00:00:00 1970 +0000)
ebfd0d875600 evolve: handle relocation during divergence resolution producing no changes
Martin von Zweigbergk <martinvonz@google.com>
parents: 5342
diff changeset
   704
  |
ebfd0d875600 evolve: handle relocation during divergence resolution producing no changes
Martin von Zweigbergk <martinvonz@google.com>
parents: 5342
diff changeset
   705
  x  898ddd4443b3 (2) divergent
ebfd0d875600 evolve: handle relocation during divergence resolution producing no changes
Martin von Zweigbergk <martinvonz@google.com>
parents: 5342
diff changeset
   706
       amended(content) as 4cc21313ecee using amend by test (Thu Jan 01 00:00:00 1970 +0000)
ebfd0d875600 evolve: handle relocation during divergence resolution producing no changes
Martin von Zweigbergk <martinvonz@google.com>
parents: 5342
diff changeset
   707
       rebased(parent) as befae6138569 using rebase by test (Thu Jan 01 00:00:00 1970 +0000)
ebfd0d875600 evolve: handle relocation during divergence resolution producing no changes
Martin von Zweigbergk <martinvonz@google.com>
parents: 5342
diff changeset
   708
  
5342
265e029785ae tests: show crash from divergence resolution resulting in empty commit
Martin von Zweigbergk <martinvonz@google.com>
parents: 5341
diff changeset
   709
  $ cd ..