tests/test-unstable-content-divergent.t
author Pierre-Yves David <pierre-yves.david@octobus.net>
Fri, 05 Apr 2019 17:45:59 +0200
changeset 4473 14437b18b024
parent 4469 be2614d257ca
permissions -rw-r--r--
evolve: fix divergence resolution when not merging a descendant In divergence resolution, when we merge other cset with divergent one we pass a `mergeancestor` arg to merge.update() and before this patch we were passing `mergeancestor` as True in every case. But it should be True only when we are merging a descendant onto an ancestor. When mergeancestor is True it does two things: 1) allows the merge if the destination is the same as the parent of the ctx (so we can use graft to copy commits) 2) informs update that the incoming changes are newer than the destination so it doesn't prompt about "remote changed foo which local deleted". So this patch change it to pass `mergeancestor` as True only when it is required. And changes in test file shows that it wasn't prompting either in those cases when it should (acc. to 2nd point) Test written by Pierre-Yves David, based the one updated in 5dbaabfe2c59.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
4469
be2614d257ca test: rename and clarify content of test-unstable-content-divergent.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3846
diff changeset
     1
==========================================
be2614d257ca test: rename and clarify content of test-unstable-content-divergent.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3846
diff changeset
     2
Tests the resolution of content-divergence
be2614d257ca test: rename and clarify content of test-unstable-content-divergent.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3846
diff changeset
     3
==========================================
1467
5c385b812500 evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
     4
5c385b812500 evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
     5
  $ cat >> $HGRCPATH <<EOF
5c385b812500 evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
     6
  > [defaults]
5c385b812500 evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
     7
  > amend=-d "0 0"
5c385b812500 evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
     8
  > fold=-d "0 0"
5c385b812500 evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
     9
  > [web]
5c385b812500 evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
    10
  > push_ssl = false
5c385b812500 evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
    11
  > allow_push = *
5c385b812500 evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
    12
  > [phases]
5c385b812500 evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
    13
  > publish = False
5c385b812500 evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
    14
  > [diff]
5c385b812500 evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
    15
  > git = 1
5c385b812500 evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
    16
  > unified = 0
5c385b812500 evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
    17
  > [ui]
5c385b812500 evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
    18
  > logtemplate = {rev}:{node|short}@{branch}({phase}) {desc|firstline} [{troubles}]\n
5c385b812500 evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
    19
  > [extensions]
5c385b812500 evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
    20
  > EOF
1806
9f42f819267b evolve: move the extensions to 'hgext3rd'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1630
diff changeset
    21
  $ echo "evolve=$(echo $(dirname $TESTDIR))/hgext3rd/evolve/" >> $HGRCPATH
1467
5c385b812500 evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
    22
  $ mkcommit() {
5c385b812500 evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
    23
  >    echo "$1" > "$1"
5c385b812500 evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
    24
  >    hg add "$1"
5c385b812500 evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
    25
  >    hg ci -m "add $1"
5c385b812500 evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
    26
  > }
5c385b812500 evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
    27
5c385b812500 evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
    28
  $ mkcommits() {
5c385b812500 evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
    29
  >   for i in $@; do mkcommit $i ; done
5c385b812500 evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
    30
  > }
5c385b812500 evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
    31
4469
be2614d257ca test: rename and clarify content of test-unstable-content-divergent.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3846
diff changeset
    32
Basic test of divergence:
be2614d257ca test: rename and clarify content of test-unstable-content-divergent.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3846
diff changeset
    33
-------------------------
be2614d257ca test: rename and clarify content of test-unstable-content-divergent.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3846
diff changeset
    34
be2614d257ca test: rename and clarify content of test-unstable-content-divergent.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3846
diff changeset
    35
two divergent changesets with the same parents
1467
5c385b812500 evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
    36
With --all --any we dedupe the divergent and solve the divergence once
5c385b812500 evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
    37
5c385b812500 evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
    38
  $ hg init test1
5c385b812500 evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
    39
  $ cd test1
3798
7c05ee4a8cc7 tests: don't use mkcommit shell function in test-divergent.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3787
diff changeset
    40
  $ echo a > a
7c05ee4a8cc7 tests: don't use mkcommit shell function in test-divergent.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3787
diff changeset
    41
  $ hg ci -Aqm "added a"
7c05ee4a8cc7 tests: don't use mkcommit shell function in test-divergent.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3787
diff changeset
    42
  $ echo b > b
7c05ee4a8cc7 tests: don't use mkcommit shell function in test-divergent.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3787
diff changeset
    43
  $ hg ci -Aqm "added b"
7c05ee4a8cc7 tests: don't use mkcommit shell function in test-divergent.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3787
diff changeset
    44
7c05ee4a8cc7 tests: don't use mkcommit shell function in test-divergent.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3787
diff changeset
    45
  $ hg up .^
1467
5c385b812500 evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
    46
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
3798
7c05ee4a8cc7 tests: don't use mkcommit shell function in test-divergent.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3787
diff changeset
    47
  $ echo bdivergent > bdivergent1
3799
037ccbf41c6d tests: make sure we don't result in commit messages conflict
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3798
diff changeset
    48
  $ hg ci -Am "divergent"
3798
7c05ee4a8cc7 tests: don't use mkcommit shell function in test-divergent.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3787
diff changeset
    49
  adding bdivergent1
1467
5c385b812500 evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
    50
  created new head
3798
7c05ee4a8cc7 tests: don't use mkcommit shell function in test-divergent.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3787
diff changeset
    51
7c05ee4a8cc7 tests: don't use mkcommit shell function in test-divergent.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3787
diff changeset
    52
  $ hg up .^
1467
5c385b812500 evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
    53
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
3798
7c05ee4a8cc7 tests: don't use mkcommit shell function in test-divergent.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3787
diff changeset
    54
  $ echo bdivergent > bdivergent2
3799
037ccbf41c6d tests: make sure we don't result in commit messages conflict
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3798
diff changeset
    55
  $ hg ci -Am "divergent"
3798
7c05ee4a8cc7 tests: don't use mkcommit shell function in test-divergent.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3787
diff changeset
    56
  adding bdivergent2
1467
5c385b812500 evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
    57
  created new head
3798
7c05ee4a8cc7 tests: don't use mkcommit shell function in test-divergent.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3787
diff changeset
    58
3799
037ccbf41c6d tests: make sure we don't result in commit messages conflict
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3798
diff changeset
    59
  $ hg prune -s 8374d2ddc3a4 "desc('added b')"
1467
5c385b812500 evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
    60
  1 changesets pruned
3799
037ccbf41c6d tests: make sure we don't result in commit messages conflict
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3798
diff changeset
    61
  $ hg prune -s 593c57f2117e "desc('added b')" --hidden
1467
5c385b812500 evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
    62
  1 changesets pruned
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
    63
  2 new content-divergent changesets
3798
7c05ee4a8cc7 tests: don't use mkcommit shell function in test-divergent.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3787
diff changeset
    64
1467
5c385b812500 evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
    65
  $ hg log -G
3799
037ccbf41c6d tests: make sure we don't result in commit messages conflict
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3798
diff changeset
    66
  @  3:8374d2ddc3a4@default(draft) divergent [content-divergent]
1467
5c385b812500 evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
    67
  |
3799
037ccbf41c6d tests: make sure we don't result in commit messages conflict
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3798
diff changeset
    68
  | *  2:593c57f2117e@default(draft) divergent [content-divergent]
1467
5c385b812500 evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
    69
  |/
3798
7c05ee4a8cc7 tests: don't use mkcommit shell function in test-divergent.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3787
diff changeset
    70
  o  0:9092f1db7931@default(draft) added a []
1467
5c385b812500 evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
    71
  
3798
7c05ee4a8cc7 tests: don't use mkcommit shell function in test-divergent.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3787
diff changeset
    72
3154
406992d0d611 evolve: rename --contentdivergent flag to --content-divergent
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3013
diff changeset
    73
  $ hg evolve --all --any --content-divergent
3799
037ccbf41c6d tests: make sure we don't result in commit messages conflict
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3798
diff changeset
    74
  merge:[2] divergent
037ccbf41c6d tests: make sure we don't result in commit messages conflict
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3798
diff changeset
    75
  with: [3] divergent
3798
7c05ee4a8cc7 tests: don't use mkcommit shell function in test-divergent.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3787
diff changeset
    76
  base: [1] added b
3799
037ccbf41c6d tests: make sure we don't result in commit messages conflict
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3798
diff changeset
    77
  updating to "local" side of the conflict: 593c57f2117e
037ccbf41c6d tests: make sure we don't result in commit messages conflict
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3798
diff changeset
    78
  merging "other" content-divergent changeset '8374d2ddc3a4'
1467
5c385b812500 evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
    79
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
3846
f9dad99a90d5 evolve: create a new commit instead of amending one of the divergents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3799
diff changeset
    80
  working directory is now at 45bf1312f454
1467
5c385b812500 evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
    81
  $ hg log -G
3846
f9dad99a90d5 evolve: create a new commit instead of amending one of the divergents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3799
diff changeset
    82
  @  4:45bf1312f454@default(draft) divergent []
1467
5c385b812500 evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
    83
  |
3798
7c05ee4a8cc7 tests: don't use mkcommit shell function in test-divergent.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3787
diff changeset
    84
  o  0:9092f1db7931@default(draft) added a []
1467
5c385b812500 evolve: dedupe divergents when running evolve --all --any or evolve --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
    85
  
4469
be2614d257ca test: rename and clarify content of test-unstable-content-divergent.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3846
diff changeset
    86
1536
9afe9e0191a1 evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents: 1467
diff changeset
    87
Test divergence resolution when it yields to an empty commit (issue4950)
4469
be2614d257ca test: rename and clarify content of test-unstable-content-divergent.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3846
diff changeset
    88
------------------------------------------------------------------------
be2614d257ca test: rename and clarify content of test-unstable-content-divergent.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3846
diff changeset
    89
1536
9afe9e0191a1 evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents: 1467
diff changeset
    90
cdivergent2 contains the same content than cdivergent1 and they are divergent
9afe9e0191a1 evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents: 1467
diff changeset
    91
versions of the revision _c
9afe9e0191a1 evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents: 1467
diff changeset
    92
3798
7c05ee4a8cc7 tests: don't use mkcommit shell function in test-divergent.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3787
diff changeset
    93
  $ hg up .^
1536
9afe9e0191a1 evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents: 1467
diff changeset
    94
  0 files updated, 0 files merged, 2 files removed, 0 files unresolved
9afe9e0191a1 evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents: 1467
diff changeset
    95
  $ mkcommit _c
9afe9e0191a1 evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents: 1467
diff changeset
    96
  created new head
3798
7c05ee4a8cc7 tests: don't use mkcommit shell function in test-divergent.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3787
diff changeset
    97
7c05ee4a8cc7 tests: don't use mkcommit shell function in test-divergent.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3787
diff changeset
    98
  $ hg up .^
1536
9afe9e0191a1 evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents: 1467
diff changeset
    99
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
9afe9e0191a1 evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents: 1467
diff changeset
   100
  $ mkcommit cdivergent1
9afe9e0191a1 evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents: 1467
diff changeset
   101
  created new head
3798
7c05ee4a8cc7 tests: don't use mkcommit shell function in test-divergent.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3787
diff changeset
   102
7c05ee4a8cc7 tests: don't use mkcommit shell function in test-divergent.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3787
diff changeset
   103
  $ hg up .^
1536
9afe9e0191a1 evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents: 1467
diff changeset
   104
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
9afe9e0191a1 evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents: 1467
diff changeset
   105
  $ echo "cdivergent1" > cdivergent1
9afe9e0191a1 evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents: 1467
diff changeset
   106
  $ hg add cdivergent1
3799
037ccbf41c6d tests: make sure we don't result in commit messages conflict
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3798
diff changeset
   107
  $ hg ci -m "add _c"
1536
9afe9e0191a1 evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents: 1467
diff changeset
   108
  created new head
3798
7c05ee4a8cc7 tests: don't use mkcommit shell function in test-divergent.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3787
diff changeset
   109
3799
037ccbf41c6d tests: make sure we don't result in commit messages conflict
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3798
diff changeset
   110
  $ hg log -G
037ccbf41c6d tests: make sure we don't result in commit messages conflict
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3798
diff changeset
   111
  @  7:b2ae71172042@default(draft) add _c []
037ccbf41c6d tests: make sure we don't result in commit messages conflict
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3798
diff changeset
   112
  |
037ccbf41c6d tests: make sure we don't result in commit messages conflict
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3798
diff changeset
   113
  | o  6:e3ff64ce8d4c@default(draft) add cdivergent1 []
037ccbf41c6d tests: make sure we don't result in commit messages conflict
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3798
diff changeset
   114
  |/
037ccbf41c6d tests: make sure we don't result in commit messages conflict
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3798
diff changeset
   115
  | o  5:48819a835615@default(draft) add _c []
037ccbf41c6d tests: make sure we don't result in commit messages conflict
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3798
diff changeset
   116
  |/
3846
f9dad99a90d5 evolve: create a new commit instead of amending one of the divergents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3799
diff changeset
   117
  | o  4:45bf1312f454@default(draft) divergent []
3799
037ccbf41c6d tests: make sure we don't result in commit messages conflict
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3798
diff changeset
   118
  |/
037ccbf41c6d tests: make sure we don't result in commit messages conflict
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3798
diff changeset
   119
  o  0:9092f1db7931@default(draft) added a []
037ccbf41c6d tests: make sure we don't result in commit messages conflict
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3798
diff changeset
   120
  
037ccbf41c6d tests: make sure we don't result in commit messages conflict
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3798
diff changeset
   121
037ccbf41c6d tests: make sure we don't result in commit messages conflict
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3798
diff changeset
   122
  $ hg prune -s b2ae71172042 48819a835615
1536
9afe9e0191a1 evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents: 1467
diff changeset
   123
  1 changesets pruned
3799
037ccbf41c6d tests: make sure we don't result in commit messages conflict
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3798
diff changeset
   124
  $ hg prune -s e3ff64ce8d4c 48819a835615 --hidden
1536
9afe9e0191a1 evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents: 1467
diff changeset
   125
  1 changesets pruned
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
   126
  2 new content-divergent changesets
3798
7c05ee4a8cc7 tests: don't use mkcommit shell function in test-divergent.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3787
diff changeset
   127
1536
9afe9e0191a1 evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents: 1467
diff changeset
   128
  $ hg log -G
3799
037ccbf41c6d tests: make sure we don't result in commit messages conflict
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3798
diff changeset
   129
  @  7:b2ae71172042@default(draft) add _c [content-divergent]
1536
9afe9e0191a1 evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents: 1467
diff changeset
   130
  |
3798
7c05ee4a8cc7 tests: don't use mkcommit shell function in test-divergent.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3787
diff changeset
   131
  | *  6:e3ff64ce8d4c@default(draft) add cdivergent1 [content-divergent]
1536
9afe9e0191a1 evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents: 1467
diff changeset
   132
  |/
3846
f9dad99a90d5 evolve: create a new commit instead of amending one of the divergents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3799
diff changeset
   133
  | o  4:45bf1312f454@default(draft) divergent []
1536
9afe9e0191a1 evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents: 1467
diff changeset
   134
  |/
3798
7c05ee4a8cc7 tests: don't use mkcommit shell function in test-divergent.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3787
diff changeset
   135
  o  0:9092f1db7931@default(draft) added a []
1536
9afe9e0191a1 evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents: 1467
diff changeset
   136
  
3154
406992d0d611 evolve: rename --contentdivergent flag to --content-divergent
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3013
diff changeset
   137
  $ hg evolve --all --any --content-divergent
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
   138
  merge:[6] add cdivergent1
3799
037ccbf41c6d tests: make sure we don't result in commit messages conflict
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3798
diff changeset
   139
  with: [7] add _c
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
   140
  base: [5] add _c
3798
7c05ee4a8cc7 tests: don't use mkcommit shell function in test-divergent.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3787
diff changeset
   141
  updating to "local" side of the conflict: e3ff64ce8d4c
3799
037ccbf41c6d tests: make sure we don't result in commit messages conflict
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3798
diff changeset
   142
  merging "other" content-divergent changeset 'b2ae71172042'
1536
9afe9e0191a1 evolve: evolve --divergent failed when merge had nothing to do (issue4950)
Laurent Charignon <lcharignon@fb.com>
parents: 1467
diff changeset
   143
  0 files updated, 0 files merged, 0 files removed, 0 files unresolved
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
   144
  nothing changed
3798
7c05ee4a8cc7 tests: don't use mkcommit shell function in test-divergent.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3787
diff changeset
   145
  working directory is now at e3ff64ce8d4c
7c05ee4a8cc7 tests: don't use mkcommit shell function in test-divergent.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3787
diff changeset
   146
7c05ee4a8cc7 tests: don't use mkcommit shell function in test-divergent.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3787
diff changeset
   147
  $ cd ..
1630
35c666ef724e evolve: Fix crush when reading docstring
Juntao Li <juntaoli@fb.com>
parents: 1536
diff changeset
   148
35c666ef724e evolve: Fix crush when reading docstring
Juntao Li <juntaoli@fb.com>
parents: 1536
diff changeset
   149
Test None docstring issue of evolve divergent, which caused hg crush
4469
be2614d257ca test: rename and clarify content of test-unstable-content-divergent.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3846
diff changeset
   150
--------------------------------------------------------------------
1630
35c666ef724e evolve: Fix crush when reading docstring
Juntao Li <juntaoli@fb.com>
parents: 1536
diff changeset
   151
35c666ef724e evolve: Fix crush when reading docstring
Juntao Li <juntaoli@fb.com>
parents: 1536
diff changeset
   152
  $ hg init test2
35c666ef724e evolve: Fix crush when reading docstring
Juntao Li <juntaoli@fb.com>
parents: 1536
diff changeset
   153
  $ cd test2
35c666ef724e evolve: Fix crush when reading docstring
Juntao Li <juntaoli@fb.com>
parents: 1536
diff changeset
   154
  $ mkcommits _a _b
3798
7c05ee4a8cc7 tests: don't use mkcommit shell function in test-divergent.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3787
diff changeset
   155
7c05ee4a8cc7 tests: don't use mkcommit shell function in test-divergent.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3787
diff changeset
   156
  $ hg up .^
1630
35c666ef724e evolve: Fix crush when reading docstring
Juntao Li <juntaoli@fb.com>
parents: 1536
diff changeset
   157
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
3798
7c05ee4a8cc7 tests: don't use mkcommit shell function in test-divergent.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3787
diff changeset
   158
  $ echo bdivergent > bdivergent11
3799
037ccbf41c6d tests: make sure we don't result in commit messages conflict
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3798
diff changeset
   159
  $ hg ci -Am "bdivergent"
3798
7c05ee4a8cc7 tests: don't use mkcommit shell function in test-divergent.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3787
diff changeset
   160
  adding bdivergent11
1630
35c666ef724e evolve: Fix crush when reading docstring
Juntao Li <juntaoli@fb.com>
parents: 1536
diff changeset
   161
  created new head
3798
7c05ee4a8cc7 tests: don't use mkcommit shell function in test-divergent.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3787
diff changeset
   162
7c05ee4a8cc7 tests: don't use mkcommit shell function in test-divergent.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3787
diff changeset
   163
  $ hg up .^
7c05ee4a8cc7 tests: don't use mkcommit shell function in test-divergent.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3787
diff changeset
   164
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
7c05ee4a8cc7 tests: don't use mkcommit shell function in test-divergent.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3787
diff changeset
   165
  $ echo bdivergent > bdivergent22
3799
037ccbf41c6d tests: make sure we don't result in commit messages conflict
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3798
diff changeset
   166
  $ hg ci -Am "bdivergent"
3798
7c05ee4a8cc7 tests: don't use mkcommit shell function in test-divergent.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3787
diff changeset
   167
  adding bdivergent22
7c05ee4a8cc7 tests: don't use mkcommit shell function in test-divergent.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3787
diff changeset
   168
  created new head
7c05ee4a8cc7 tests: don't use mkcommit shell function in test-divergent.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3787
diff changeset
   169
3799
037ccbf41c6d tests: make sure we don't result in commit messages conflict
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3798
diff changeset
   170
  $ hg log -G
037ccbf41c6d tests: make sure we don't result in commit messages conflict
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3798
diff changeset
   171
  @  3:6b096fb45070@default(draft) bdivergent []
037ccbf41c6d tests: make sure we don't result in commit messages conflict
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3798
diff changeset
   172
  |
037ccbf41c6d tests: make sure we don't result in commit messages conflict
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3798
diff changeset
   173
  | o  2:05a6b6a9e633@default(draft) bdivergent []
037ccbf41c6d tests: make sure we don't result in commit messages conflict
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3798
diff changeset
   174
  |/
037ccbf41c6d tests: make sure we don't result in commit messages conflict
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3798
diff changeset
   175
  | o  1:37445b16603b@default(draft) add _b []
037ccbf41c6d tests: make sure we don't result in commit messages conflict
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3798
diff changeset
   176
  |/
037ccbf41c6d tests: make sure we don't result in commit messages conflict
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3798
diff changeset
   177
  o  0:135f39f4bd78@default(draft) add _a []
037ccbf41c6d tests: make sure we don't result in commit messages conflict
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3798
diff changeset
   178
  
037ccbf41c6d tests: make sure we don't result in commit messages conflict
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3798
diff changeset
   179
037ccbf41c6d tests: make sure we don't result in commit messages conflict
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3798
diff changeset
   180
  $ hg prune -s 6b096fb45070 37445b16603b
1630
35c666ef724e evolve: Fix crush when reading docstring
Juntao Li <juntaoli@fb.com>
parents: 1536
diff changeset
   181
  1 changesets pruned
3799
037ccbf41c6d tests: make sure we don't result in commit messages conflict
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3798
diff changeset
   182
  $ hg prune -s 05a6b6a9e633 37445b16603b --hidden
1630
35c666ef724e evolve: Fix crush when reading docstring
Juntao Li <juntaoli@fb.com>
parents: 1536
diff changeset
   183
  1 changesets pruned
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
   184
  2 new content-divergent changesets
1630
35c666ef724e evolve: Fix crush when reading docstring
Juntao Li <juntaoli@fb.com>
parents: 1536
diff changeset
   185
  $ hg log -G
3799
037ccbf41c6d tests: make sure we don't result in commit messages conflict
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3798
diff changeset
   186
  @  3:6b096fb45070@default(draft) bdivergent [content-divergent]
1630
35c666ef724e evolve: Fix crush when reading docstring
Juntao Li <juntaoli@fb.com>
parents: 1536
diff changeset
   187
  |
3799
037ccbf41c6d tests: make sure we don't result in commit messages conflict
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3798
diff changeset
   188
  | *  2:05a6b6a9e633@default(draft) bdivergent [content-divergent]
1630
35c666ef724e evolve: Fix crush when reading docstring
Juntao Li <juntaoli@fb.com>
parents: 1536
diff changeset
   189
  |/
35c666ef724e evolve: Fix crush when reading docstring
Juntao Li <juntaoli@fb.com>
parents: 1536
diff changeset
   190
  o  0:135f39f4bd78@default(draft) add _a []
35c666ef724e evolve: Fix crush when reading docstring
Juntao Li <juntaoli@fb.com>
parents: 1536
diff changeset
   191
  
3798
7c05ee4a8cc7 tests: don't use mkcommit shell function in test-divergent.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3787
diff changeset
   192
1630
35c666ef724e evolve: Fix crush when reading docstring
Juntao Li <juntaoli@fb.com>
parents: 1536
diff changeset
   193
  $ cat >$TESTTMP/test_extension.py  << EOF
35c666ef724e evolve: Fix crush when reading docstring
Juntao Li <juntaoli@fb.com>
parents: 1536
diff changeset
   194
  > from mercurial import merge
35c666ef724e evolve: Fix crush when reading docstring
Juntao Li <juntaoli@fb.com>
parents: 1536
diff changeset
   195
  > origupdate = merge.update
35c666ef724e evolve: Fix crush when reading docstring
Juntao Li <juntaoli@fb.com>
parents: 1536
diff changeset
   196
  > def newupdate(*args, **kwargs):
35c666ef724e evolve: Fix crush when reading docstring
Juntao Li <juntaoli@fb.com>
parents: 1536
diff changeset
   197
  >   return origupdate(*args, **kwargs)
35c666ef724e evolve: Fix crush when reading docstring
Juntao Li <juntaoli@fb.com>
parents: 1536
diff changeset
   198
  > merge.update = newupdate
35c666ef724e evolve: Fix crush when reading docstring
Juntao Li <juntaoli@fb.com>
parents: 1536
diff changeset
   199
  > EOF
35c666ef724e evolve: Fix crush when reading docstring
Juntao Li <juntaoli@fb.com>
parents: 1536
diff changeset
   200
  $ cat >> $HGRCPATH << EOF
35c666ef724e evolve: Fix crush when reading docstring
Juntao Li <juntaoli@fb.com>
parents: 1536
diff changeset
   201
  > [extensions]
35c666ef724e evolve: Fix crush when reading docstring
Juntao Li <juntaoli@fb.com>
parents: 1536
diff changeset
   202
  > testextension=$TESTTMP/test_extension.py
35c666ef724e evolve: Fix crush when reading docstring
Juntao Li <juntaoli@fb.com>
parents: 1536
diff changeset
   203
  > EOF
35c666ef724e evolve: Fix crush when reading docstring
Juntao Li <juntaoli@fb.com>
parents: 1536
diff changeset
   204
  $ hg evolve --all
35c666ef724e evolve: Fix crush when reading docstring
Juntao Li <juntaoli@fb.com>
parents: 1536
diff changeset
   205
  nothing to evolve on current working copy parent
3154
406992d0d611 evolve: rename --contentdivergent flag to --content-divergent
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3013
diff changeset
   206
  (do you want to use --content-divergent)
1630
35c666ef724e evolve: Fix crush when reading docstring
Juntao Li <juntaoli@fb.com>
parents: 1536
diff changeset
   207
  [2]
3154
406992d0d611 evolve: rename --contentdivergent flag to --content-divergent
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3013
diff changeset
   208
  $ hg evolve --content-divergent
3799
037ccbf41c6d tests: make sure we don't result in commit messages conflict
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3798
diff changeset
   209
  merge:[3] bdivergent
037ccbf41c6d tests: make sure we don't result in commit messages conflict
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3798
diff changeset
   210
  with: [2] bdivergent
1630
35c666ef724e evolve: Fix crush when reading docstring
Juntao Li <juntaoli@fb.com>
parents: 1536
diff changeset
   211
  base: [1] add _b
3799
037ccbf41c6d tests: make sure we don't result in commit messages conflict
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3798
diff changeset
   212
  merging "other" content-divergent changeset '05a6b6a9e633'
1630
35c666ef724e evolve: Fix crush when reading docstring
Juntao Li <juntaoli@fb.com>
parents: 1536
diff changeset
   213
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
3846
f9dad99a90d5 evolve: create a new commit instead of amending one of the divergents
Pulkit Goyal <7895pulkit@gmail.com>
parents: 3799
diff changeset
   214
  working directory is now at 73ff357d3975
1630
35c666ef724e evolve: Fix crush when reading docstring
Juntao Li <juntaoli@fb.com>
parents: 1536
diff changeset
   215
35c666ef724e evolve: Fix crush when reading docstring
Juntao Li <juntaoli@fb.com>
parents: 1536
diff changeset
   216
  $ cd ..