tests/test-graft.t
author Mads Kiilerich <madski@unity3d.com>
Thu, 11 May 2017 17:18:40 +0200
branchstable
changeset 32205 b4e1e30528c7
parent 32204 78fb569e2c33
child 32245 3a755652ce3a
permissions -rw-r--r--
graft: fix graft across merges of duplicates of grafted changes Graft used findmissingrevs to find the candidates for graft duplicates in the destination. That function operates with the constraint: 1. N is an ancestor of some node in 'heads' 2. N is not an ancestor of any node in 'common' For our purpose, we do however have to work correctly in cases where the graft set has multiple roots or where merges between graft ranges are skipped. The only changesets we can be sure doesn't have ancestors that are grafts of any changeset in the graftset, are the ones that are common ancestors of *all* changesets in the graftset. We thus need: 2. N is not an ancestor of all nodes in 'common' This change will graft more correctly, but it will also in some cases make graft slower by making it search through a bigger and unnecessary large sets of changes to find duplicates. In the general case of grafting individual or linear sets, we do the same amount of work as before.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
28033
0707bbec682d tests: omit -p for external diff via extdiff extension for portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 28011
diff changeset
     1
  $ cat >> $HGRCPATH <<EOF
28052
b59ef0c21405 tests: use portable diff script via extdiff extension
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 28034
diff changeset
     2
  > [extdiff]
b59ef0c21405 tests: use portable diff script via extdiff extension
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 28034
diff changeset
     3
  > # for portability:
b59ef0c21405 tests: use portable diff script via extdiff extension
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 28034
diff changeset
     4
  > pdiff = sh "$RUNTESTDIR/pdiff"
28033
0707bbec682d tests: omit -p for external diff via extdiff extension for portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 28011
diff changeset
     5
  > EOF
0707bbec682d tests: omit -p for external diff via extdiff extension for portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 28011
diff changeset
     6
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
     7
Create a repo with some stuff in it:
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
     8
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
     9
  $ hg init a
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    10
  $ cd a
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    11
  $ echo a > a
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    12
  $ echo a > d
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    13
  $ echo a > e
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    14
  $ hg ci -qAm0
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    15
  $ echo b > a
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    16
  $ hg ci -m1 -u bar
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    17
  $ hg mv a b
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    18
  $ hg ci -m2
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    19
  $ hg cp b c
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    20
  $ hg ci -m3 -u baz
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    21
  $ echo b > d
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    22
  $ echo f > e
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    23
  $ hg ci -m4
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    24
  $ hg up -q 3
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    25
  $ echo b > e
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    26
  $ hg branch -q stable
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    27
  $ hg ci -m5
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    28
  $ hg merge -q default --tool internal:local
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    29
  $ hg branch -q default
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    30
  $ hg ci -m6
15918
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
    31
  $ hg phase --public 3
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
    32
  $ hg phase --force --secret 6
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
    33
20117
aa9385f983fa tests: don't load unnecessary graphlog extension
Martin Geisler <martin@geisler.net>
parents: 19893
diff changeset
    34
  $ hg log -G --template '{author}@{rev}.{phase}: {desc}\n'
15918
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
    35
  @    test@6.secret: 6
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
    36
  |\
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
    37
  | o  test@5.draft: 5
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
    38
  | |
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
    39
  o |  test@4.draft: 4
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
    40
  |/
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
    41
  o  baz@3.public: 3
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
    42
  |
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
    43
  o  test@2.public: 2
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
    44
  |
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
    45
  o  bar@1.public: 1
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
    46
  |
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
    47
  o  test@0.public: 0
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
    48
  
28121
bd97ed121016 graft: suggest the correct tool to continue (not graft)
timeless <timeless@mozdev.org>
parents: 28052
diff changeset
    49
Can't continue without starting:
bd97ed121016 graft: suggest the correct tool to continue (not graft)
timeless <timeless@mozdev.org>
parents: 28052
diff changeset
    50
bd97ed121016 graft: suggest the correct tool to continue (not graft)
timeless <timeless@mozdev.org>
parents: 28052
diff changeset
    51
  $ hg rm -q e
bd97ed121016 graft: suggest the correct tool to continue (not graft)
timeless <timeless@mozdev.org>
parents: 28052
diff changeset
    52
  $ hg graft --continue
bd97ed121016 graft: suggest the correct tool to continue (not graft)
timeless <timeless@mozdev.org>
parents: 28052
diff changeset
    53
  abort: no graft in progress
bd97ed121016 graft: suggest the correct tool to continue (not graft)
timeless <timeless@mozdev.org>
parents: 28052
diff changeset
    54
  [255]
bd97ed121016 graft: suggest the correct tool to continue (not graft)
timeless <timeless@mozdev.org>
parents: 28052
diff changeset
    55
  $ hg revert -r . -q e
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    56
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    57
Need to specify a rev:
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    58
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    59
  $ hg graft
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    60
  abort: no revisions specified
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    61
  [255]
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    62
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    63
Can't graft ancestor:
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    64
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    65
  $ hg graft 1 2
23507
67045b5a903a graft: show hashes in user-facing messages
Mads Kiilerich <madski@unity3d.com>
parents: 23506
diff changeset
    66
  skipping ancestor revision 1:5d205f8b35b6
67045b5a903a graft: show hashes in user-facing messages
Mads Kiilerich <madski@unity3d.com>
parents: 23506
diff changeset
    67
  skipping ancestor revision 2:5c095ad7e90f
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    68
  [255]
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    69
16992
55e7f352b1d3 graft: allow -r to specify revisions
Thomas Arendsen Hein <thomas@intevation.de>
parents: 16913
diff changeset
    70
Specify revisions with -r:
55e7f352b1d3 graft: allow -r to specify revisions
Thomas Arendsen Hein <thomas@intevation.de>
parents: 16913
diff changeset
    71
55e7f352b1d3 graft: allow -r to specify revisions
Thomas Arendsen Hein <thomas@intevation.de>
parents: 16913
diff changeset
    72
  $ hg graft -r 1 -r 2
23507
67045b5a903a graft: show hashes in user-facing messages
Mads Kiilerich <madski@unity3d.com>
parents: 23506
diff changeset
    73
  skipping ancestor revision 1:5d205f8b35b6
67045b5a903a graft: show hashes in user-facing messages
Mads Kiilerich <madski@unity3d.com>
parents: 23506
diff changeset
    74
  skipping ancestor revision 2:5c095ad7e90f
16992
55e7f352b1d3 graft: allow -r to specify revisions
Thomas Arendsen Hein <thomas@intevation.de>
parents: 16913
diff changeset
    75
  [255]
55e7f352b1d3 graft: allow -r to specify revisions
Thomas Arendsen Hein <thomas@intevation.de>
parents: 16913
diff changeset
    76
55e7f352b1d3 graft: allow -r to specify revisions
Thomas Arendsen Hein <thomas@intevation.de>
parents: 16913
diff changeset
    77
  $ hg graft -r 1 2
27899
78b9fdb844c1 graft: warn when -r is combined with revisions as positional arguments
Mads Kiilerich <madski@unity3d.com>
parents: 27625
diff changeset
    78
  warning: inconsistent use of --rev might give unexpected revision ordering!
23507
67045b5a903a graft: show hashes in user-facing messages
Mads Kiilerich <madski@unity3d.com>
parents: 23506
diff changeset
    79
  skipping ancestor revision 2:5c095ad7e90f
67045b5a903a graft: show hashes in user-facing messages
Mads Kiilerich <madski@unity3d.com>
parents: 23506
diff changeset
    80
  skipping ancestor revision 1:5d205f8b35b6
16992
55e7f352b1d3 graft: allow -r to specify revisions
Thomas Arendsen Hein <thomas@intevation.de>
parents: 16913
diff changeset
    81
  [255]
55e7f352b1d3 graft: allow -r to specify revisions
Thomas Arendsen Hein <thomas@intevation.de>
parents: 16913
diff changeset
    82
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    83
Can't graft with dirty wd:
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    84
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    85
  $ hg up -q 0
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    86
  $ echo foo > a
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    87
  $ hg graft 1
19804
061ce98c888d cmdutil.bailifchanged: standardize error message for dirty working dir
Siddharth Agarwal <sid0@fb.com>
parents: 19476
diff changeset
    88
  abort: uncommitted changes
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    89
  [255]
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    90
  $ hg revert a
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    91
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    92
Graft a rename:
21416
3e717c9376fc graft: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21391
diff changeset
    93
(this also tests that editor is invoked if '--edit' is specified)
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    94
21416
3e717c9376fc graft: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21391
diff changeset
    95
  $ hg status --rev "2^1" --rev 2
3e717c9376fc graft: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21391
diff changeset
    96
  A b
3e717c9376fc graft: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21391
diff changeset
    97
  R a
3e717c9376fc graft: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21391
diff changeset
    98
  $ HGEDITOR=cat hg graft 2 -u foo --edit
23505
bd5dbb8a05c8 graft: show more useful status information while grafting
Mads Kiilerich <madski@unity3d.com>
parents: 23504
diff changeset
    99
  grafting 2:5c095ad7e90f "2"
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   100
  merging a and b to b
21416
3e717c9376fc graft: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21391
diff changeset
   101
  2
3e717c9376fc graft: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21391
diff changeset
   102
  
3e717c9376fc graft: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21391
diff changeset
   103
  
3e717c9376fc graft: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21391
diff changeset
   104
  HG: Enter commit message.  Lines beginning with 'HG:' are removed.
3e717c9376fc graft: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21391
diff changeset
   105
  HG: Leave message empty to abort commit.
3e717c9376fc graft: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21391
diff changeset
   106
  HG: --
3e717c9376fc graft: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21391
diff changeset
   107
  HG: user: foo
3e717c9376fc graft: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21391
diff changeset
   108
  HG: branch 'default'
22897
8fe74328f700 dirstate: merge falls through to otherparent
Matt Mackall <mpm@selenic.com>
parents: 22305
diff changeset
   109
  HG: added b
21416
3e717c9376fc graft: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21391
diff changeset
   110
  HG: removed a
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   111
  $ hg export tip --git
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   112
  # HG changeset patch
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   113
  # User foo
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   114
  # Date 0 0
18648
76b69cccb07a export: show 'Date' header in a format that also is readable for humans
Mads Kiilerich <mads@kiilerich.com>
parents: 18631
diff changeset
   115
  #      Thu Jan 01 00:00:00 1970 +0000
16601
0c98820be15c filectx: handle some other simple cases for finding merge ancestor
Matt Mackall <mpm@selenic.com>
parents: 16600
diff changeset
   116
  # Node ID ef0ef43d49e79e81ddafdc7997401ba0041efc82
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   117
  # Parent  68795b066622ca79a25816a662041d8f78f3cd9e
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   118
  2
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   119
  
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   120
  diff --git a/a b/b
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   121
  rename from a
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   122
  rename to b
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   123
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   124
Look for extra:source
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   125
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   126
  $ hg log --debug -r tip
16601
0c98820be15c filectx: handle some other simple cases for finding merge ancestor
Matt Mackall <mpm@selenic.com>
parents: 16600
diff changeset
   127
  changeset:   7:ef0ef43d49e79e81ddafdc7997401ba0041efc82
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   128
  tag:         tip
15907
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15777
diff changeset
   129
  phase:       draft
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   130
  parent:      0:68795b066622ca79a25816a662041d8f78f3cd9e
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   131
  parent:      -1:0000000000000000000000000000000000000000
16601
0c98820be15c filectx: handle some other simple cases for finding merge ancestor
Matt Mackall <mpm@selenic.com>
parents: 16600
diff changeset
   132
  manifest:    7:e59b6b228f9cbf9903d5e9abf996e083a1f533eb
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   133
  user:        foo
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   134
  date:        Thu Jan 01 00:00:00 1970 +0000
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   135
  files+:      b
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   136
  files-:      a
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   137
  extra:       branch=default
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   138
  extra:       source=5c095ad7e90f871700f02dd1fa5012cb4498a2d4
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   139
  description:
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   140
  2
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   141
  
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   142
  
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   143
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   144
Graft out of order, skipping a merge and a duplicate
21416
3e717c9376fc graft: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21391
diff changeset
   145
(this also tests that editor is not invoked if '--edit' is not specified)
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   146
16389
79fecd735d26 graft: add --dry-run support (issue3362)
Matt Mackall <mpm@selenic.com>
parents: 16094
diff changeset
   147
  $ hg graft 1 5 4 3 'merge()' 2 -n
79fecd735d26 graft: add --dry-run support (issue3362)
Matt Mackall <mpm@selenic.com>
parents: 16094
diff changeset
   148
  skipping ungraftable merge revision 6
23507
67045b5a903a graft: show hashes in user-facing messages
Mads Kiilerich <madski@unity3d.com>
parents: 23506
diff changeset
   149
  skipping revision 2:5c095ad7e90f (already grafted to 7:ef0ef43d49e7)
23505
bd5dbb8a05c8 graft: show more useful status information while grafting
Mads Kiilerich <madski@unity3d.com>
parents: 23504
diff changeset
   150
  grafting 1:5d205f8b35b6 "1"
bd5dbb8a05c8 graft: show more useful status information while grafting
Mads Kiilerich <madski@unity3d.com>
parents: 23504
diff changeset
   151
  grafting 5:97f8bfe72746 "5"
bd5dbb8a05c8 graft: show more useful status information while grafting
Mads Kiilerich <madski@unity3d.com>
parents: 23504
diff changeset
   152
  grafting 4:9c233e8e184d "4"
bd5dbb8a05c8 graft: show more useful status information while grafting
Mads Kiilerich <madski@unity3d.com>
parents: 23504
diff changeset
   153
  grafting 3:4c60f11aa304 "3"
16389
79fecd735d26 graft: add --dry-run support (issue3362)
Matt Mackall <mpm@selenic.com>
parents: 16094
diff changeset
   154
27173
8a8f5d71a49a graft: improve --continue abort message
timeless <timeless@mozdev.org>
parents: 27172
diff changeset
   155
  $ HGEDITOR=cat hg graft 1 5 'merge()' 2 --debug
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   156
  skipping ungraftable merge revision 6
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   157
  scanning for duplicate grafts
23507
67045b5a903a graft: show hashes in user-facing messages
Mads Kiilerich <madski@unity3d.com>
parents: 23506
diff changeset
   158
  skipping revision 2:5c095ad7e90f (already grafted to 7:ef0ef43d49e7)
23505
bd5dbb8a05c8 graft: show more useful status information while grafting
Mads Kiilerich <madski@unity3d.com>
parents: 23504
diff changeset
   159
  grafting 1:5d205f8b35b6 "1"
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   160
    searching for copies back to rev 1
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   161
    unmatched files in local:
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   162
     b
16795
e9ae770eff1c merge: show renamed on one and deleted on the other side in debug output
Thomas Arendsen Hein <thomas@intevation.de>
parents: 16660
diff changeset
   163
    all copies found (* = to merge, ! = divergent, % = renamed and deleted):
18135
a6fe1b9cc68f copies: make debug messages more sensible
Siddharth Agarwal <sid0@fb.com>
parents: 17186
diff changeset
   164
     src: 'a' -> dst: 'b' *
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   165
    checking for directory renames
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   166
  resolving manifests
18605
bcf29565d89f manifestmerge: pass in branchmerge and force separately
Siddharth Agarwal <sid0@fb.com>
parents: 18541
diff changeset
   167
   branchmerge: True, force: True, partial: False
16601
0c98820be15c filectx: handle some other simple cases for finding merge ancestor
Matt Mackall <mpm@selenic.com>
parents: 16600
diff changeset
   168
   ancestor: 68795b066622, local: ef0ef43d49e7+, remote: 5d205f8b35b6
21391
cb15835456cb merge: change debug logging - test output changes but no real changes
Mads Kiilerich <madski@unity3d.com>
parents: 21389
diff changeset
   169
   preserving b for resolve of b
28318
564a354f7f35 tests: flag Windows specific lines about background closing as optional
Matt Harbison <matt_harbison@yahoo.com>
parents: 28121
diff changeset
   170
  starting 4 threads for background file closing (?)
26618
8e6d5b7317e6 merge.mergestate: perform all premerges before any merges (BC)
Siddharth Agarwal <sid0@fb.com>
parents: 26614
diff changeset
   171
   b: local copied/moved from a -> m (premerge)
27161
296d55def9c4 filemerge: add debug output for whether this is a change/delete conflict
Siddharth Agarwal <sid0@fb.com>
parents: 26618
diff changeset
   172
  picked tool ':merge' for b (binary False symlink False changedelete False)
16601
0c98820be15c filectx: handle some other simple cases for finding merge ancestor
Matt Mackall <mpm@selenic.com>
parents: 16600
diff changeset
   173
  merging b and a to b
0c98820be15c filectx: handle some other simple cases for finding merge ancestor
Matt Mackall <mpm@selenic.com>
parents: 16600
diff changeset
   174
  my b@ef0ef43d49e7+ other a@5d205f8b35b6 ancestor a@68795b066622
0c98820be15c filectx: handle some other simple cases for finding merge ancestor
Matt Mackall <mpm@selenic.com>
parents: 16600
diff changeset
   175
   premerge successful
23749
a387b0390082 localrepo: show headline notes in commitctx before showing filenames
Mads Kiilerich <madski@unity3d.com>
parents: 23514
diff changeset
   176
  committing files:
16601
0c98820be15c filectx: handle some other simple cases for finding merge ancestor
Matt Mackall <mpm@selenic.com>
parents: 16600
diff changeset
   177
  b
23749
a387b0390082 localrepo: show headline notes in commitctx before showing filenames
Mads Kiilerich <madski@unity3d.com>
parents: 23514
diff changeset
   178
  committing manifest
a387b0390082 localrepo: show headline notes in commitctx before showing filenames
Mads Kiilerich <madski@unity3d.com>
parents: 23514
diff changeset
   179
  committing changelog
23505
bd5dbb8a05c8 graft: show more useful status information while grafting
Mads Kiilerich <madski@unity3d.com>
parents: 23504
diff changeset
   180
  grafting 5:97f8bfe72746 "5"
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   181
    searching for copies back to rev 1
30197
0accd5a5ad04 mergecopies: invoke _computenonoverlap for both base and tca during merges
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30192
diff changeset
   182
    unmatched files in other (from topological common ancestor):
0accd5a5ad04 mergecopies: invoke _computenonoverlap for both base and tca during merges
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30192
diff changeset
   183
     c
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   184
  resolving manifests
18605
bcf29565d89f manifestmerge: pass in branchmerge and force separately
Siddharth Agarwal <sid0@fb.com>
parents: 18541
diff changeset
   185
   branchmerge: True, force: True, partial: False
16601
0c98820be15c filectx: handle some other simple cases for finding merge ancestor
Matt Mackall <mpm@selenic.com>
parents: 16600
diff changeset
   186
   ancestor: 4c60f11aa304, local: 6b9e5368ca4e+, remote: 97f8bfe72746
21389
e741972017d9 merge: change priority / ordering of merge actions
Mads Kiilerich <madski@unity3d.com>
parents: 21267
diff changeset
   187
   e: remote is newer -> g
18631
e2dc5397bc82 tests: update test output (will be folded into parent)
Bryan O'Sullivan <bryano@fb.com>
parents: 18605
diff changeset
   188
  getting e
23482
208ec8ca7c79 merge: make 'keep' message more descriptive
Martin von Zweigbergk <martinvonz@google.com>
parents: 23463
diff changeset
   189
   b: remote unchanged -> k
23749
a387b0390082 localrepo: show headline notes in commitctx before showing filenames
Mads Kiilerich <madski@unity3d.com>
parents: 23514
diff changeset
   190
  committing files:
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   191
  e
23749
a387b0390082 localrepo: show headline notes in commitctx before showing filenames
Mads Kiilerich <madski@unity3d.com>
parents: 23514
diff changeset
   192
  committing manifest
a387b0390082 localrepo: show headline notes in commitctx before showing filenames
Mads Kiilerich <madski@unity3d.com>
parents: 23514
diff changeset
   193
  committing changelog
27173
8a8f5d71a49a graft: improve --continue abort message
timeless <timeless@mozdev.org>
parents: 27172
diff changeset
   194
  $ HGEDITOR=cat hg graft 4 3 --log --debug
8a8f5d71a49a graft: improve --continue abort message
timeless <timeless@mozdev.org>
parents: 27172
diff changeset
   195
  scanning for duplicate grafts
23505
bd5dbb8a05c8 graft: show more useful status information while grafting
Mads Kiilerich <madski@unity3d.com>
parents: 23504
diff changeset
   196
  grafting 4:9c233e8e184d "4"
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   197
    searching for copies back to rev 1
30197
0accd5a5ad04 mergecopies: invoke _computenonoverlap for both base and tca during merges
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30192
diff changeset
   198
    unmatched files in other (from topological common ancestor):
0accd5a5ad04 mergecopies: invoke _computenonoverlap for both base and tca during merges
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30192
diff changeset
   199
     c
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   200
  resolving manifests
18605
bcf29565d89f manifestmerge: pass in branchmerge and force separately
Siddharth Agarwal <sid0@fb.com>
parents: 18541
diff changeset
   201
   branchmerge: True, force: True, partial: False
16601
0c98820be15c filectx: handle some other simple cases for finding merge ancestor
Matt Mackall <mpm@selenic.com>
parents: 16600
diff changeset
   202
   ancestor: 4c60f11aa304, local: 1905859650ec+, remote: 9c233e8e184d
21391
cb15835456cb merge: change debug logging - test output changes but no real changes
Mads Kiilerich <madski@unity3d.com>
parents: 21389
diff changeset
   203
   preserving e for resolve of e
21389
e741972017d9 merge: change priority / ordering of merge actions
Mads Kiilerich <madski@unity3d.com>
parents: 21267
diff changeset
   204
   d: remote is newer -> g
21391
cb15835456cb merge: change debug logging - test output changes but no real changes
Mads Kiilerich <madski@unity3d.com>
parents: 21389
diff changeset
   205
  getting d
23482
208ec8ca7c79 merge: make 'keep' message more descriptive
Martin von Zweigbergk <martinvonz@google.com>
parents: 23463
diff changeset
   206
   b: remote unchanged -> k
26618
8e6d5b7317e6 merge.mergestate: perform all premerges before any merges (BC)
Siddharth Agarwal <sid0@fb.com>
parents: 26614
diff changeset
   207
   e: versions differ -> m (premerge)
27161
296d55def9c4 filemerge: add debug output for whether this is a change/delete conflict
Siddharth Agarwal <sid0@fb.com>
parents: 26618
diff changeset
   208
  picked tool ':merge' for e (binary False symlink False changedelete False)
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   209
  merging e
28011
8abd9f785030 merge: add file ancestor linknode to mergestate
Durham Goode <durham@fb.com>
parents: 27899
diff changeset
   210
  my e@1905859650ec+ other e@9c233e8e184d ancestor e@4c60f11aa304
26618
8e6d5b7317e6 merge.mergestate: perform all premerges before any merges (BC)
Siddharth Agarwal <sid0@fb.com>
parents: 26614
diff changeset
   211
   e: versions differ -> m (merge)
27161
296d55def9c4 filemerge: add debug output for whether this is a change/delete conflict
Siddharth Agarwal <sid0@fb.com>
parents: 26618
diff changeset
   212
  picked tool ':merge' for e (binary False symlink False changedelete False)
28011
8abd9f785030 merge: add file ancestor linknode to mergestate
Durham Goode <durham@fb.com>
parents: 27899
diff changeset
   213
  my e@1905859650ec+ other e@9c233e8e184d ancestor e@4c60f11aa304
26614
ef1eb6df7071 simplemerge: move conflict warning message to filemerge
Siddharth Agarwal <sid0@fb.com>
parents: 26611
diff changeset
   214
  warning: conflicts while merging e! (edit, then use 'hg resolve --mark')
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   215
  abort: unresolved conflicts, can't continue
28963
fc1d75e7a98d graft: use single quotes around command hint
timeless <timeless@mozdev.org>
parents: 28634
diff changeset
   216
  (use 'hg resolve' and 'hg graft --continue --log')
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   217
  [255]
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   218
27172
4d61c847e06c summary: mention graft
timeless <timeless@mozdev.org>
parents: 27161
diff changeset
   219
Summary should mention graft:
4d61c847e06c summary: mention graft
timeless <timeless@mozdev.org>
parents: 27161
diff changeset
   220
4d61c847e06c summary: mention graft
timeless <timeless@mozdev.org>
parents: 27161
diff changeset
   221
  $ hg summary |grep graft
4d61c847e06c summary: mention graft
timeless <timeless@mozdev.org>
parents: 27161
diff changeset
   222
  commit: 2 modified, 2 unknown, 1 unresolved (graft in progress)
4d61c847e06c summary: mention graft
timeless <timeless@mozdev.org>
parents: 27161
diff changeset
   223
19253
e078ea9b4ce4 graft: refuse to commit an interrupted graft (issue3667)
Simon King <simon@simonking.org.uk>
parents: 18648
diff changeset
   224
Commit while interrupted should fail:
e078ea9b4ce4 graft: refuse to commit an interrupted graft (issue3667)
Simon King <simon@simonking.org.uk>
parents: 18648
diff changeset
   225
e078ea9b4ce4 graft: refuse to commit an interrupted graft (issue3667)
Simon King <simon@simonking.org.uk>
parents: 18648
diff changeset
   226
  $ hg ci -m 'commit interrupted graft'
19476
4fed15d4c5aa commands: add checks for unfinished operations (issue3955)
Matt Mackall <mpm@selenic.com>
parents: 19332
diff changeset
   227
  abort: graft in progress
4fed15d4c5aa commands: add checks for unfinished operations (issue3955)
Matt Mackall <mpm@selenic.com>
parents: 19332
diff changeset
   228
  (use 'hg graft --continue' or 'hg update' to abort)
19253
e078ea9b4ce4 graft: refuse to commit an interrupted graft (issue3667)
Simon King <simon@simonking.org.uk>
parents: 18648
diff changeset
   229
  [255]
e078ea9b4ce4 graft: refuse to commit an interrupted graft (issue3667)
Simon King <simon@simonking.org.uk>
parents: 18648
diff changeset
   230
19332
0af993732f66 update: remove .hg/graftstate on clean (issue3970)
Siddharth Agarwal <sid0@fb.com>
parents: 19253
diff changeset
   231
Abort the graft and try committing:
0af993732f66 update: remove .hg/graftstate on clean (issue3970)
Siddharth Agarwal <sid0@fb.com>
parents: 19253
diff changeset
   232
0af993732f66 update: remove .hg/graftstate on clean (issue3970)
Siddharth Agarwal <sid0@fb.com>
parents: 19253
diff changeset
   233
  $ hg up -C .
0af993732f66 update: remove .hg/graftstate on clean (issue3970)
Siddharth Agarwal <sid0@fb.com>
parents: 19253
diff changeset
   234
  2 files updated, 0 files merged, 0 files removed, 0 files unresolved
0af993732f66 update: remove .hg/graftstate on clean (issue3970)
Siddharth Agarwal <sid0@fb.com>
parents: 19253
diff changeset
   235
  $ echo c >> e
0af993732f66 update: remove .hg/graftstate on clean (issue3970)
Siddharth Agarwal <sid0@fb.com>
parents: 19253
diff changeset
   236
  $ hg ci -mtest
0af993732f66 update: remove .hg/graftstate on clean (issue3970)
Siddharth Agarwal <sid0@fb.com>
parents: 19253
diff changeset
   237
23514
3575f42e1b7b test-graft: use strip extension instead of mq extension
Augie Fackler <raf@durin42.com>
parents: 23508
diff changeset
   238
  $ hg strip . --config extensions.strip=
19332
0af993732f66 update: remove .hg/graftstate on clean (issue3970)
Siddharth Agarwal <sid0@fb.com>
parents: 19253
diff changeset
   239
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
0af993732f66 update: remove .hg/graftstate on clean (issue3970)
Siddharth Agarwal <sid0@fb.com>
parents: 19253
diff changeset
   240
  saved backup bundle to $TESTTMP/a/.hg/strip-backup/*-backup.hg (glob)
0af993732f66 update: remove .hg/graftstate on clean (issue3970)
Siddharth Agarwal <sid0@fb.com>
parents: 19253
diff changeset
   241
0af993732f66 update: remove .hg/graftstate on clean (issue3970)
Siddharth Agarwal <sid0@fb.com>
parents: 19253
diff changeset
   242
Graft again:
0af993732f66 update: remove .hg/graftstate on clean (issue3970)
Siddharth Agarwal <sid0@fb.com>
parents: 19253
diff changeset
   243
0af993732f66 update: remove .hg/graftstate on clean (issue3970)
Siddharth Agarwal <sid0@fb.com>
parents: 19253
diff changeset
   244
  $ hg graft 1 5 4 3 'merge()' 2
0af993732f66 update: remove .hg/graftstate on clean (issue3970)
Siddharth Agarwal <sid0@fb.com>
parents: 19253
diff changeset
   245
  skipping ungraftable merge revision 6
23507
67045b5a903a graft: show hashes in user-facing messages
Mads Kiilerich <madski@unity3d.com>
parents: 23506
diff changeset
   246
  skipping revision 2:5c095ad7e90f (already grafted to 7:ef0ef43d49e7)
67045b5a903a graft: show hashes in user-facing messages
Mads Kiilerich <madski@unity3d.com>
parents: 23506
diff changeset
   247
  skipping revision 1:5d205f8b35b6 (already grafted to 8:6b9e5368ca4e)
67045b5a903a graft: show hashes in user-facing messages
Mads Kiilerich <madski@unity3d.com>
parents: 23506
diff changeset
   248
  skipping revision 5:97f8bfe72746 (already grafted to 9:1905859650ec)
23505
bd5dbb8a05c8 graft: show more useful status information while grafting
Mads Kiilerich <madski@unity3d.com>
parents: 23504
diff changeset
   249
  grafting 4:9c233e8e184d "4"
19332
0af993732f66 update: remove .hg/graftstate on clean (issue3970)
Siddharth Agarwal <sid0@fb.com>
parents: 19253
diff changeset
   250
  merging e
26614
ef1eb6df7071 simplemerge: move conflict warning message to filemerge
Siddharth Agarwal <sid0@fb.com>
parents: 26611
diff changeset
   251
  warning: conflicts while merging e! (edit, then use 'hg resolve --mark')
19332
0af993732f66 update: remove .hg/graftstate on clean (issue3970)
Siddharth Agarwal <sid0@fb.com>
parents: 19253
diff changeset
   252
  abort: unresolved conflicts, can't continue
28963
fc1d75e7a98d graft: use single quotes around command hint
timeless <timeless@mozdev.org>
parents: 28634
diff changeset
   253
  (use 'hg resolve' and 'hg graft --continue')
19332
0af993732f66 update: remove .hg/graftstate on clean (issue3970)
Siddharth Agarwal <sid0@fb.com>
parents: 19253
diff changeset
   254
  [255]
0af993732f66 update: remove .hg/graftstate on clean (issue3970)
Siddharth Agarwal <sid0@fb.com>
parents: 19253
diff changeset
   255
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   256
Continue without resolve should fail:
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   257
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   258
  $ hg graft -c
23505
bd5dbb8a05c8 graft: show more useful status information while grafting
Mads Kiilerich <madski@unity3d.com>
parents: 23504
diff changeset
   259
  grafting 4:9c233e8e184d "4"
29975
c15f06109b7a localrepo: use single quotes in use warning
timeless <timeless@mozdev.org>
parents: 28963
diff changeset
   260
  abort: unresolved merge conflicts (see 'hg help resolve')
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   261
  [255]
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   262
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   263
Fix up:
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   264
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   265
  $ echo b > e
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   266
  $ hg resolve -m e
21947
b081decd9062 resolve: add parenthesis around "no more unresolved files" message
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21765
diff changeset
   267
  (no more unresolved files)
27625
cdb9493a7e2f graft: hook afterresolvedstates
timeless <timeless@mozdev.org>
parents: 27173
diff changeset
   268
  continue: hg graft --continue
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   269
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   270
Continue with a revision should fail:
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   271
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   272
  $ hg graft -c 6
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   273
  abort: can't specify --continue and revisions
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   274
  [255]
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   275
16992
55e7f352b1d3 graft: allow -r to specify revisions
Thomas Arendsen Hein <thomas@intevation.de>
parents: 16913
diff changeset
   276
  $ hg graft -c -r 6
55e7f352b1d3 graft: allow -r to specify revisions
Thomas Arendsen Hein <thomas@intevation.de>
parents: 16913
diff changeset
   277
  abort: can't specify --continue and revisions
55e7f352b1d3 graft: allow -r to specify revisions
Thomas Arendsen Hein <thomas@intevation.de>
parents: 16913
diff changeset
   278
  [255]
55e7f352b1d3 graft: allow -r to specify revisions
Thomas Arendsen Hein <thomas@intevation.de>
parents: 16913
diff changeset
   279
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   280
Continue for real, clobber usernames
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   281
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   282
  $ hg graft -c -U
23505
bd5dbb8a05c8 graft: show more useful status information while grafting
Mads Kiilerich <madski@unity3d.com>
parents: 23504
diff changeset
   283
  grafting 4:9c233e8e184d "4"
bd5dbb8a05c8 graft: show more useful status information while grafting
Mads Kiilerich <madski@unity3d.com>
parents: 23504
diff changeset
   284
  grafting 3:4c60f11aa304 "3"
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   285
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   286
Compare with original:
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   287
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   288
  $ hg diff -r 6
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   289
  $ hg status --rev 0:. -C
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   290
  M d
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   291
  M e
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   292
  A b
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   293
    a
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   294
  A c
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   295
    a
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   296
  R a
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   297
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   298
View graph:
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   299
20117
aa9385f983fa tests: don't load unnecessary graphlog extension
Martin Geisler <martin@geisler.net>
parents: 19893
diff changeset
   300
  $ hg log -G --template '{author}@{rev}.{phase}: {desc}\n'
16601
0c98820be15c filectx: handle some other simple cases for finding merge ancestor
Matt Mackall <mpm@selenic.com>
parents: 16600
diff changeset
   301
  @  test@11.draft: 3
0c98820be15c filectx: handle some other simple cases for finding merge ancestor
Matt Mackall <mpm@selenic.com>
parents: 16600
diff changeset
   302
  |
0c98820be15c filectx: handle some other simple cases for finding merge ancestor
Matt Mackall <mpm@selenic.com>
parents: 16600
diff changeset
   303
  o  test@10.draft: 4
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   304
  |
16601
0c98820be15c filectx: handle some other simple cases for finding merge ancestor
Matt Mackall <mpm@selenic.com>
parents: 16600
diff changeset
   305
  o  test@9.draft: 5
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   306
  |
16601
0c98820be15c filectx: handle some other simple cases for finding merge ancestor
Matt Mackall <mpm@selenic.com>
parents: 16600
diff changeset
   307
  o  bar@8.draft: 1
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   308
  |
15918
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
   309
  o  foo@7.draft: 2
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   310
  |
15918
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
   311
  | o    test@6.secret: 6
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   312
  | |\
15918
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
   313
  | | o  test@5.draft: 5
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   314
  | | |
15918
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
   315
  | o |  test@4.draft: 4
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   316
  | |/
15918
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
   317
  | o  baz@3.public: 3
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   318
  | |
15918
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
   319
  | o  test@2.public: 2
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   320
  | |
15918
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
   321
  | o  bar@1.public: 1
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   322
  |/
15918
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
   323
  o  test@0.public: 0
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   324
  
15506
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   325
Graft again onto another branch should preserve the original source
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   326
  $ hg up -q 0
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   327
  $ echo 'g'>g
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   328
  $ hg add g
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   329
  $ hg ci -m 7
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   330
  created new head
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   331
  $ hg graft 7
23505
bd5dbb8a05c8 graft: show more useful status information while grafting
Mads Kiilerich <madski@unity3d.com>
parents: 23504
diff changeset
   332
  grafting 7:ef0ef43d49e7 "2"
15506
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   333
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   334
  $ hg log -r 7 --template '{rev}:{node}\n'
16601
0c98820be15c filectx: handle some other simple cases for finding merge ancestor
Matt Mackall <mpm@selenic.com>
parents: 16600
diff changeset
   335
  7:ef0ef43d49e79e81ddafdc7997401ba0041efc82
15506
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   336
  $ hg log -r 2 --template '{rev}:{node}\n'
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   337
  2:5c095ad7e90f871700f02dd1fa5012cb4498a2d4
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   338
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   339
  $ hg log --debug -r tip
24644
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   340
  changeset:   13:7a4785234d87ec1aa420ed6b11afe40fa73e12a9
15506
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   341
  tag:         tip
15907
51fc43253a52 changeset_printer: display changeset phase on debug level
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15777
diff changeset
   342
  phase:       draft
16601
0c98820be15c filectx: handle some other simple cases for finding merge ancestor
Matt Mackall <mpm@selenic.com>
parents: 16600
diff changeset
   343
  parent:      12:b592ea63bb0c19a6c5c44685ee29a2284f9f1b8f
15506
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   344
  parent:      -1:0000000000000000000000000000000000000000
16601
0c98820be15c filectx: handle some other simple cases for finding merge ancestor
Matt Mackall <mpm@selenic.com>
parents: 16600
diff changeset
   345
  manifest:    13:dc313617b8c32457c0d589e0dbbedfe71f3cd637
15506
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   346
  user:        foo
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   347
  date:        Thu Jan 01 00:00:00 1970 +0000
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   348
  files+:      b
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   349
  files-:      a
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   350
  extra:       branch=default
24644
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   351
  extra:       intermediate-source=ef0ef43d49e79e81ddafdc7997401ba0041efc82
15506
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   352
  extra:       source=5c095ad7e90f871700f02dd1fa5012cb4498a2d4
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   353
  description:
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   354
  2
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   355
  
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   356
  
15508
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
   357
Disallow grafting an already grafted cset onto its original branch
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
   358
  $ hg up -q 6
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
   359
  $ hg graft 7
23507
67045b5a903a graft: show hashes in user-facing messages
Mads Kiilerich <madski@unity3d.com>
parents: 23506
diff changeset
   360
  skipping already grafted revision 7:ef0ef43d49e7 (was grafted from 2:5c095ad7e90f)
15508
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
   361
  [255]
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
   362
28052
b59ef0c21405 tests: use portable diff script via extdiff extension
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 28034
diff changeset
   363
  $ hg pdiff --config extensions.extdiff= --patch -r 2 -r 13
28034
e7ff258f71df tests: make timezone in diff output glob-ed for portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 28033
diff changeset
   364
  --- */hg-5c095ad7e90f.patch	* (glob)
e7ff258f71df tests: make timezone in diff output glob-ed for portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 28033
diff changeset
   365
  +++ */hg-7a4785234d87.patch	* (glob)
26228
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   366
  @@ -1,18 +1,18 @@
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   367
   # HG changeset patch
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   368
  -# User test
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   369
  +# User foo
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   370
   # Date 0 0
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   371
   #      Thu Jan 01 00:00:00 1970 +0000
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   372
  -# Node ID 5c095ad7e90f871700f02dd1fa5012cb4498a2d4
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   373
  -# Parent  5d205f8b35b66bc36375c9534ffd3237730e8f04
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   374
  +# Node ID 7a4785234d87ec1aa420ed6b11afe40fa73e12a9
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   375
  +# Parent  b592ea63bb0c19a6c5c44685ee29a2284f9f1b8f
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   376
   2
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   377
   
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   378
  -diff -r 5d205f8b35b6 -r 5c095ad7e90f a
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   379
  +diff -r b592ea63bb0c -r 7a4785234d87 a
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   380
   --- a/a	Thu Jan 01 00:00:00 1970 +0000
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   381
   +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   382
   @@ -1,1 +0,0 @@
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   383
  --b
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   384
  -diff -r 5d205f8b35b6 -r 5c095ad7e90f b
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   385
  +-a
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   386
  +diff -r b592ea63bb0c -r 7a4785234d87 b
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   387
   --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   388
   +++ b/b	Thu Jan 01 00:00:00 1970 +0000
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   389
   @@ -0,0 +1,1 @@
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   390
  -+b
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   391
  ++a
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   392
  [1]
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   393
28052
b59ef0c21405 tests: use portable diff script via extdiff extension
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 28034
diff changeset
   394
  $ hg pdiff --config extensions.extdiff= --patch -r 2 -r 13 -X .
28034
e7ff258f71df tests: make timezone in diff output glob-ed for portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 28033
diff changeset
   395
  --- */hg-5c095ad7e90f.patch	* (glob)
e7ff258f71df tests: make timezone in diff output glob-ed for portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 28033
diff changeset
   396
  +++ */hg-7a4785234d87.patch	* (glob)
26229
d1530c6e8613 extdiff: enable -I/-X with --patch
Matt Harbison <matt_harbison@yahoo.com>
parents: 26228
diff changeset
   397
  @@ -1,8 +1,8 @@
d1530c6e8613 extdiff: enable -I/-X with --patch
Matt Harbison <matt_harbison@yahoo.com>
parents: 26228
diff changeset
   398
   # HG changeset patch
d1530c6e8613 extdiff: enable -I/-X with --patch
Matt Harbison <matt_harbison@yahoo.com>
parents: 26228
diff changeset
   399
  -# User test
d1530c6e8613 extdiff: enable -I/-X with --patch
Matt Harbison <matt_harbison@yahoo.com>
parents: 26228
diff changeset
   400
  +# User foo
d1530c6e8613 extdiff: enable -I/-X with --patch
Matt Harbison <matt_harbison@yahoo.com>
parents: 26228
diff changeset
   401
   # Date 0 0
d1530c6e8613 extdiff: enable -I/-X with --patch
Matt Harbison <matt_harbison@yahoo.com>
parents: 26228
diff changeset
   402
   #      Thu Jan 01 00:00:00 1970 +0000
d1530c6e8613 extdiff: enable -I/-X with --patch
Matt Harbison <matt_harbison@yahoo.com>
parents: 26228
diff changeset
   403
  -# Node ID 5c095ad7e90f871700f02dd1fa5012cb4498a2d4
d1530c6e8613 extdiff: enable -I/-X with --patch
Matt Harbison <matt_harbison@yahoo.com>
parents: 26228
diff changeset
   404
  -# Parent  5d205f8b35b66bc36375c9534ffd3237730e8f04
d1530c6e8613 extdiff: enable -I/-X with --patch
Matt Harbison <matt_harbison@yahoo.com>
parents: 26228
diff changeset
   405
  +# Node ID 7a4785234d87ec1aa420ed6b11afe40fa73e12a9
d1530c6e8613 extdiff: enable -I/-X with --patch
Matt Harbison <matt_harbison@yahoo.com>
parents: 26228
diff changeset
   406
  +# Parent  b592ea63bb0c19a6c5c44685ee29a2284f9f1b8f
d1530c6e8613 extdiff: enable -I/-X with --patch
Matt Harbison <matt_harbison@yahoo.com>
parents: 26228
diff changeset
   407
   2
d1530c6e8613 extdiff: enable -I/-X with --patch
Matt Harbison <matt_harbison@yahoo.com>
parents: 26228
diff changeset
   408
   
d1530c6e8613 extdiff: enable -I/-X with --patch
Matt Harbison <matt_harbison@yahoo.com>
parents: 26228
diff changeset
   409
  [1]
26228
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   410
15508
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
   411
Disallow grafting already grafted csets with the same origin onto each other
16601
0c98820be15c filectx: handle some other simple cases for finding merge ancestor
Matt Mackall <mpm@selenic.com>
parents: 16600
diff changeset
   412
  $ hg up -q 13
15508
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
   413
  $ hg graft 2
24644
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   414
  skipping revision 2:5c095ad7e90f (already grafted to 13:7a4785234d87)
15508
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
   415
  [255]
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
   416
  $ hg graft 7
24644
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   417
  skipping already grafted revision 7:ef0ef43d49e7 (13:7a4785234d87 also has origin 2:5c095ad7e90f)
15508
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
   418
  [255]
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
   419
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
   420
  $ hg up -q 7
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
   421
  $ hg graft 2
23507
67045b5a903a graft: show hashes in user-facing messages
Mads Kiilerich <madski@unity3d.com>
parents: 23506
diff changeset
   422
  skipping revision 2:5c095ad7e90f (already grafted to 7:ef0ef43d49e7)
15508
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
   423
  [255]
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
   424
  $ hg graft tip
24644
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   425
  skipping already grafted revision 13:7a4785234d87 (7:ef0ef43d49e7 also has origin 2:5c095ad7e90f)
15508
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
   426
  [255]
17045
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   427
16660
2a71cc53f244 graft: implement --log (issue3438)
Levi Bard <levi@unity3d.com>
parents: 16601
diff changeset
   428
Graft with --log
2a71cc53f244 graft: implement --log (issue3438)
Levi Bard <levi@unity3d.com>
parents: 16601
diff changeset
   429
2a71cc53f244 graft: implement --log (issue3438)
Levi Bard <levi@unity3d.com>
parents: 16601
diff changeset
   430
  $ hg up -Cq 1
2a71cc53f244 graft: implement --log (issue3438)
Levi Bard <levi@unity3d.com>
parents: 16601
diff changeset
   431
  $ hg graft 3 --log -u foo
23505
bd5dbb8a05c8 graft: show more useful status information while grafting
Mads Kiilerich <madski@unity3d.com>
parents: 23504
diff changeset
   432
  grafting 3:4c60f11aa304 "3"
16660
2a71cc53f244 graft: implement --log (issue3438)
Levi Bard <levi@unity3d.com>
parents: 16601
diff changeset
   433
  warning: can't find ancestor for 'c' copied from 'b'!
30188
8a864844d5a0 checkcopies: add a sanity check against false-positive copies
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 29975
diff changeset
   434
  $ hg log --template '{rev}:{node|short} {parents} {desc}\n' -r tip
8a864844d5a0 checkcopies: add a sanity check against false-positive copies
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 29975
diff changeset
   435
  14:0c921c65ef1e 1:5d205f8b35b6  3
16660
2a71cc53f244 graft: implement --log (issue3438)
Levi Bard <levi@unity3d.com>
parents: 16601
diff changeset
   436
  (grafted from 4c60f11aa304a54ae1c199feb94e7fc771e51ed8)
16913
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 16795
diff changeset
   437
17045
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   438
Resolve conflicted graft
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   439
  $ hg up -q 0
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   440
  $ echo b > a
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   441
  $ hg ci -m 8
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   442
  created new head
23463
bb0143e12f35 graft: use a real conflict for the tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 23167
diff changeset
   443
  $ echo c > a
17045
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   444
  $ hg ci -m 9
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   445
  $ hg graft 1 --tool internal:fail
23505
bd5dbb8a05c8 graft: show more useful status information while grafting
Mads Kiilerich <madski@unity3d.com>
parents: 23504
diff changeset
   446
  grafting 1:5d205f8b35b6 "1"
17045
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   447
  abort: unresolved conflicts, can't continue
28963
fc1d75e7a98d graft: use single quotes around command hint
timeless <timeless@mozdev.org>
parents: 28634
diff changeset
   448
  (use 'hg resolve' and 'hg graft --continue')
17045
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   449
  [255]
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   450
  $ hg resolve --all
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   451
  merging a
26614
ef1eb6df7071 simplemerge: move conflict warning message to filemerge
Siddharth Agarwal <sid0@fb.com>
parents: 26611
diff changeset
   452
  warning: conflicts while merging a! (edit, then use 'hg resolve --mark')
23463
bb0143e12f35 graft: use a real conflict for the tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 23167
diff changeset
   453
  [1]
bb0143e12f35 graft: use a real conflict for the tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 23167
diff changeset
   454
  $ cat a
bb0143e12f35 graft: use a real conflict for the tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 23167
diff changeset
   455
  <<<<<<< local: aaa4406d4f0a - test: 9
bb0143e12f35 graft: use a real conflict for the tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 23167
diff changeset
   456
  c
bb0143e12f35 graft: use a real conflict for the tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 23167
diff changeset
   457
  =======
bb0143e12f35 graft: use a real conflict for the tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 23167
diff changeset
   458
  b
30460
ce3a133f71b3 conflicts: make spacing consistent in conflict markers
Kostia Balytskyi <ikostia@fb.com>
parents: 30229
diff changeset
   459
  >>>>>>> graft: 5d205f8b35b6 - bar: 1
23463
bb0143e12f35 graft: use a real conflict for the tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 23167
diff changeset
   460
  $ echo b > a
bb0143e12f35 graft: use a real conflict for the tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 23167
diff changeset
   461
  $ hg resolve -m a
21947
b081decd9062 resolve: add parenthesis around "no more unresolved files" message
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21765
diff changeset
   462
  (no more unresolved files)
27625
cdb9493a7e2f graft: hook afterresolvedstates
timeless <timeless@mozdev.org>
parents: 27173
diff changeset
   463
  continue: hg graft --continue
17045
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   464
  $ hg graft -c
23505
bd5dbb8a05c8 graft: show more useful status information while grafting
Mads Kiilerich <madski@unity3d.com>
parents: 23504
diff changeset
   465
  grafting 1:5d205f8b35b6 "1"
17045
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   466
  $ hg export tip --git
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   467
  # HG changeset patch
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   468
  # User bar
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   469
  # Date 0 0
18648
76b69cccb07a export: show 'Date' header in a format that also is readable for humans
Mads Kiilerich <mads@kiilerich.com>
parents: 18631
diff changeset
   470
  #      Thu Jan 01 00:00:00 1970 +0000
23463
bb0143e12f35 graft: use a real conflict for the tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 23167
diff changeset
   471
  # Node ID f67661df0c4804d301f064f332b57e7d5ddaf2be
bb0143e12f35 graft: use a real conflict for the tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 23167
diff changeset
   472
  # Parent  aaa4406d4f0ae9befd6e58c82ec63706460cbca6
17045
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   473
  1
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   474
  
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   475
  diff --git a/a b/a
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   476
  --- a/a
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   477
  +++ b/a
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   478
  @@ -1,1 +1,1 @@
23463
bb0143e12f35 graft: use a real conflict for the tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 23167
diff changeset
   479
  -c
17045
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   480
  +b
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   481
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   482
Resolve conflicted graft with rename
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   483
  $ echo c > a
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   484
  $ hg ci -m 10
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   485
  $ hg graft 2 --tool internal:fail
23505
bd5dbb8a05c8 graft: show more useful status information while grafting
Mads Kiilerich <madski@unity3d.com>
parents: 23504
diff changeset
   486
  grafting 2:5c095ad7e90f "2"
17045
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   487
  abort: unresolved conflicts, can't continue
28963
fc1d75e7a98d graft: use single quotes around command hint
timeless <timeless@mozdev.org>
parents: 28634
diff changeset
   488
  (use 'hg resolve' and 'hg graft --continue')
17045
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   489
  [255]
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   490
  $ hg resolve --all
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   491
  merging a and b to b
21947
b081decd9062 resolve: add parenthesis around "no more unresolved files" message
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21765
diff changeset
   492
  (no more unresolved files)
27625
cdb9493a7e2f graft: hook afterresolvedstates
timeless <timeless@mozdev.org>
parents: 27173
diff changeset
   493
  continue: hg graft --continue
17045
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   494
  $ hg graft -c
23505
bd5dbb8a05c8 graft: show more useful status information while grafting
Mads Kiilerich <madski@unity3d.com>
parents: 23504
diff changeset
   495
  grafting 2:5c095ad7e90f "2"
17045
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   496
  $ hg export tip --git
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   497
  # HG changeset patch
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   498
  # User test
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   499
  # Date 0 0
18648
76b69cccb07a export: show 'Date' header in a format that also is readable for humans
Mads Kiilerich <mads@kiilerich.com>
parents: 18631
diff changeset
   500
  #      Thu Jan 01 00:00:00 1970 +0000
23463
bb0143e12f35 graft: use a real conflict for the tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 23167
diff changeset
   501
  # Node ID 9627f653b421c61fc1ea4c4e366745070fa3d2bc
bb0143e12f35 graft: use a real conflict for the tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 23167
diff changeset
   502
  # Parent  ee295f490a40b97f3d18dd4c4f1c8936c233b612
17045
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   503
  2
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   504
  
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   505
  diff --git a/a b/b
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   506
  rename from a
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   507
  rename to b
17185
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   508
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   509
Test simple origin(), with and without args
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   510
  $ hg log -r 'origin()'
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   511
  changeset:   1:5d205f8b35b6
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   512
  user:        bar
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   513
  date:        Thu Jan 01 00:00:00 1970 +0000
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   514
  summary:     1
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   515
  
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   516
  changeset:   2:5c095ad7e90f
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   517
  user:        test
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   518
  date:        Thu Jan 01 00:00:00 1970 +0000
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   519
  summary:     2
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   520
  
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   521
  changeset:   3:4c60f11aa304
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   522
  user:        baz
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   523
  date:        Thu Jan 01 00:00:00 1970 +0000
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   524
  summary:     3
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   525
  
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   526
  changeset:   4:9c233e8e184d
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   527
  user:        test
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   528
  date:        Thu Jan 01 00:00:00 1970 +0000
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   529
  summary:     4
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   530
  
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   531
  changeset:   5:97f8bfe72746
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   532
  branch:      stable
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   533
  parent:      3:4c60f11aa304
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   534
  user:        test
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   535
  date:        Thu Jan 01 00:00:00 1970 +0000
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   536
  summary:     5
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   537
  
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   538
  $ hg log -r 'origin(7)'
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   539
  changeset:   2:5c095ad7e90f
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   540
  user:        test
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   541
  date:        Thu Jan 01 00:00:00 1970 +0000
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   542
  summary:     2
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   543
  
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   544
Now transplant a graft to test following through copies
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   545
  $ hg up -q 0
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   546
  $ hg branch -q dev
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   547
  $ hg ci -qm "dev branch"
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   548
  $ hg --config extensions.transplant= transplant -q 7
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   549
  $ hg log -r 'origin(.)'
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   550
  changeset:   2:5c095ad7e90f
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   551
  user:        test
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   552
  date:        Thu Jan 01 00:00:00 1970 +0000
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   553
  summary:     2
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   554
  
21765
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   555
Test that the graft and transplant markers in extra are converted, allowing
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   556
origin() to still work.  Note that these recheck the immediately preceeding two
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   557
tests.
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   558
  $ hg --quiet --config extensions.convert= --config convert.hg.saverev=True convert . ../converted
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   559
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   560
The graft case
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   561
  $ hg -R ../converted log -r 7 --template "{rev}: {node}\n{join(extras, '\n')}\n"
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   562
  7: 7ae846e9111fc8f57745634250c7b9ac0a60689b
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   563
  branch=default
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   564
  convert_revision=ef0ef43d49e79e81ddafdc7997401ba0041efc82
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   565
  source=e0213322b2c1a5d5d236c74e79666441bee67a7d
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   566
  $ hg -R ../converted log -r 'origin(7)'
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   567
  changeset:   2:e0213322b2c1
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   568
  user:        test
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   569
  date:        Thu Jan 01 00:00:00 1970 +0000
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   570
  summary:     2
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   571
  
25589
273d94255e1e convert: update 'intermediate-source' in the destination's extras dictionary
Matt Harbison <matt_harbison@yahoo.com>
parents: 25125
diff changeset
   572
Test that template correctly expands more than one 'extra' (issue4362), and that
273d94255e1e convert: update 'intermediate-source' in the destination's extras dictionary
Matt Harbison <matt_harbison@yahoo.com>
parents: 25125
diff changeset
   573
'intermediate-source' is converted.
273d94255e1e convert: update 'intermediate-source' in the destination's extras dictionary
Matt Harbison <matt_harbison@yahoo.com>
parents: 25125
diff changeset
   574
  $ hg -R ../converted log -r 13 --template "{extras % ' Extra: {extra}\n'}"
23167
a3c2d9211294 templater: don't overwrite the keyword mapping in runsymbol() (issue4362)
Matt Harbison <matt_harbison@yahoo.com>
parents: 22897
diff changeset
   575
   Extra: branch=default
25589
273d94255e1e convert: update 'intermediate-source' in the destination's extras dictionary
Matt Harbison <matt_harbison@yahoo.com>
parents: 25125
diff changeset
   576
   Extra: convert_revision=7a4785234d87ec1aa420ed6b11afe40fa73e12a9
273d94255e1e convert: update 'intermediate-source' in the destination's extras dictionary
Matt Harbison <matt_harbison@yahoo.com>
parents: 25125
diff changeset
   577
   Extra: intermediate-source=7ae846e9111fc8f57745634250c7b9ac0a60689b
23167
a3c2d9211294 templater: don't overwrite the keyword mapping in runsymbol() (issue4362)
Matt Harbison <matt_harbison@yahoo.com>
parents: 22897
diff changeset
   578
   Extra: source=e0213322b2c1a5d5d236c74e79666441bee67a7d
a3c2d9211294 templater: don't overwrite the keyword mapping in runsymbol() (issue4362)
Matt Harbison <matt_harbison@yahoo.com>
parents: 22897
diff changeset
   579
21765
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   580
The transplant case
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   581
  $ hg -R ../converted log -r tip --template "{rev}: {node}\n{join(extras, '\n')}\n"
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   582
  21: fbb6c5cc81002f2b4b49c9d731404688bcae5ade
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   583
  branch=dev
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   584
  convert_revision=7e61b508e709a11d28194a5359bc3532d910af21
31452
52dabcc49968 templatekw: make join() escape values of extras (BC) (issue5504)
Yuya Nishihara <yuya@tcha.org>
parents: 30581
diff changeset
   585
  transplant_source=z\xe8F\xe9\x11\x1f\xc8\xf5wEcBP\xc7\xb9\xac\n`h\x9b
21765
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   586
  $ hg -R ../converted log -r 'origin(tip)'
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   587
  changeset:   2:e0213322b2c1
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   588
  user:        test
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   589
  date:        Thu Jan 01 00:00:00 1970 +0000
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   590
  summary:     2
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   591
  
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   592
17186
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   593
Test simple destination
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   594
  $ hg log -r 'destination()'
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   595
  changeset:   7:ef0ef43d49e7
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   596
  parent:      0:68795b066622
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   597
  user:        foo
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   598
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   599
  summary:     2
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   600
  
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   601
  changeset:   8:6b9e5368ca4e
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   602
  user:        bar
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   603
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   604
  summary:     1
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   605
  
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   606
  changeset:   9:1905859650ec
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   607
  user:        test
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   608
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   609
  summary:     5
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   610
  
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   611
  changeset:   10:52dc0b4c6907
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   612
  user:        test
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   613
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   614
  summary:     4
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   615
  
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   616
  changeset:   11:882b35362a6b
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   617
  user:        test
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   618
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   619
  summary:     3
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   620
  
24644
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   621
  changeset:   13:7a4785234d87
17186
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   622
  user:        foo
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   623
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   624
  summary:     2
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   625
  
30188
8a864844d5a0 checkcopies: add a sanity check against false-positive copies
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 29975
diff changeset
   626
  changeset:   14:0c921c65ef1e
17186
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   627
  parent:      1:5d205f8b35b6
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   628
  user:        foo
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   629
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   630
  summary:     3
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   631
  
23463
bb0143e12f35 graft: use a real conflict for the tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 23167
diff changeset
   632
  changeset:   17:f67661df0c48
17186
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   633
  user:        bar
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   634
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   635
  summary:     1
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   636
  
23463
bb0143e12f35 graft: use a real conflict for the tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 23167
diff changeset
   637
  changeset:   19:9627f653b421
17186
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   638
  user:        test
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   639
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   640
  summary:     2
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   641
  
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   642
  changeset:   21:7e61b508e709
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   643
  branch:      dev
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   644
  tag:         tip
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   645
  user:        foo
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   646
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   647
  summary:     2
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   648
  
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   649
  $ hg log -r 'destination(2)'
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   650
  changeset:   7:ef0ef43d49e7
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   651
  parent:      0:68795b066622
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   652
  user:        foo
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   653
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   654
  summary:     2
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   655
  
24644
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   656
  changeset:   13:7a4785234d87
17186
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   657
  user:        foo
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   658
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   659
  summary:     2
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   660
  
23463
bb0143e12f35 graft: use a real conflict for the tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 23167
diff changeset
   661
  changeset:   19:9627f653b421
17186
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   662
  user:        test
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   663
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   664
  summary:     2
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   665
  
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   666
  changeset:   21:7e61b508e709
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   667
  branch:      dev
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   668
  tag:         tip
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   669
  user:        foo
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   670
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   671
  summary:     2
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   672
  
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   673
Transplants of grafts can find a destination...
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   674
  $ hg log -r 'destination(7)'
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   675
  changeset:   21:7e61b508e709
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   676
  branch:      dev
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   677
  tag:         tip
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   678
  user:        foo
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   679
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   680
  summary:     2
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   681
  
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   682
... grafts of grafts unfortunately can't
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   683
  $ hg graft -q 13
23929
a43fdf33a6be commit: remove reverse search for copy source when not in parent (issue4476)
Ryan McElroy <rmcelroy@fb.com>
parents: 23917
diff changeset
   684
  warning: can't find ancestor for 'b' copied from 'a'!
17186
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   685
  $ hg log -r 'destination(13)'
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   686
All copies of a cset
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   687
  $ hg log -r 'origin(13) or destination(origin(13))'
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   688
  changeset:   2:5c095ad7e90f
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   689
  user:        test
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   690
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   691
  summary:     2
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   692
  
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   693
  changeset:   7:ef0ef43d49e7
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   694
  parent:      0:68795b066622
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   695
  user:        foo
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   696
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   697
  summary:     2
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   698
  
24644
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   699
  changeset:   13:7a4785234d87
17186
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   700
  user:        foo
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   701
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   702
  summary:     2
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   703
  
23463
bb0143e12f35 graft: use a real conflict for the tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 23167
diff changeset
   704
  changeset:   19:9627f653b421
17186
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   705
  user:        test
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   706
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   707
  summary:     2
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   708
  
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   709
  changeset:   21:7e61b508e709
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   710
  branch:      dev
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   711
  user:        foo
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   712
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   713
  summary:     2
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   714
  
24644
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   715
  changeset:   22:d1cb6591fa4b
17186
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   716
  branch:      dev
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   717
  tag:         tip
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   718
  user:        foo
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   719
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   720
  summary:     2
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   721
  
21200
a1381eea7c7d graft: do not use `.remove` on a smart set (regression)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21082
diff changeset
   722
a1381eea7c7d graft: do not use `.remove` on a smart set (regression)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21082
diff changeset
   723
graft works on complex revset
a1381eea7c7d graft: do not use `.remove` on a smart set (regression)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21082
diff changeset
   724
a1381eea7c7d graft: do not use `.remove` on a smart set (regression)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21082
diff changeset
   725
  $ hg graft 'origin(13) or destination(origin(13))'
23507
67045b5a903a graft: show hashes in user-facing messages
Mads Kiilerich <madski@unity3d.com>
parents: 23506
diff changeset
   726
  skipping ancestor revision 21:7e61b508e709
24644
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   727
  skipping ancestor revision 22:d1cb6591fa4b
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   728
  skipping revision 2:5c095ad7e90f (already grafted to 22:d1cb6591fa4b)
23505
bd5dbb8a05c8 graft: show more useful status information while grafting
Mads Kiilerich <madski@unity3d.com>
parents: 23504
diff changeset
   729
  grafting 7:ef0ef43d49e7 "2"
23929
a43fdf33a6be commit: remove reverse search for copy source when not in parent (issue4476)
Ryan McElroy <rmcelroy@fb.com>
parents: 23917
diff changeset
   730
  warning: can't find ancestor for 'b' copied from 'a'!
24644
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   731
  grafting 13:7a4785234d87 "2"
23929
a43fdf33a6be commit: remove reverse search for copy source when not in parent (issue4476)
Ryan McElroy <rmcelroy@fb.com>
parents: 23917
diff changeset
   732
  warning: can't find ancestor for 'b' copied from 'a'!
23505
bd5dbb8a05c8 graft: show more useful status information while grafting
Mads Kiilerich <madski@unity3d.com>
parents: 23504
diff changeset
   733
  grafting 19:9627f653b421 "2"
21200
a1381eea7c7d graft: do not use `.remove` on a smart set (regression)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21082
diff changeset
   734
  merging b
23929
a43fdf33a6be commit: remove reverse search for copy source when not in parent (issue4476)
Ryan McElroy <rmcelroy@fb.com>
parents: 23917
diff changeset
   735
  warning: can't find ancestor for 'b' copied from 'a'!
22302
9472284df4eb graft: fix collision detection with origin revisions that are missing
Mads Kiilerich <madski@unity3d.com>
parents: 21947
diff changeset
   736
21979
c2863cfe8a8a graft: allow regrafting ancestors with --force (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21947
diff changeset
   737
graft with --force (still doesn't graft merges)
c2863cfe8a8a graft: allow regrafting ancestors with --force (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21947
diff changeset
   738
c2863cfe8a8a graft: allow regrafting ancestors with --force (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21947
diff changeset
   739
  $ hg graft 19 0 6
c2863cfe8a8a graft: allow regrafting ancestors with --force (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21947
diff changeset
   740
  skipping ungraftable merge revision 6
23507
67045b5a903a graft: show hashes in user-facing messages
Mads Kiilerich <madski@unity3d.com>
parents: 23506
diff changeset
   741
  skipping ancestor revision 0:68795b066622
24644
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   742
  skipping already grafted revision 19:9627f653b421 (22:d1cb6591fa4b also has origin 2:5c095ad7e90f)
21979
c2863cfe8a8a graft: allow regrafting ancestors with --force (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21947
diff changeset
   743
  [255]
c2863cfe8a8a graft: allow regrafting ancestors with --force (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21947
diff changeset
   744
  $ hg graft 19 0 6 --force
c2863cfe8a8a graft: allow regrafting ancestors with --force (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21947
diff changeset
   745
  skipping ungraftable merge revision 6
23505
bd5dbb8a05c8 graft: show more useful status information while grafting
Mads Kiilerich <madski@unity3d.com>
parents: 23504
diff changeset
   746
  grafting 19:9627f653b421 "2"
21979
c2863cfe8a8a graft: allow regrafting ancestors with --force (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21947
diff changeset
   747
  merging b
23929
a43fdf33a6be commit: remove reverse search for copy source when not in parent (issue4476)
Ryan McElroy <rmcelroy@fb.com>
parents: 23917
diff changeset
   748
  warning: can't find ancestor for 'b' copied from 'a'!
23505
bd5dbb8a05c8 graft: show more useful status information while grafting
Mads Kiilerich <madski@unity3d.com>
parents: 23504
diff changeset
   749
  grafting 0:68795b066622 "0"
21979
c2863cfe8a8a graft: allow regrafting ancestors with --force (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21947
diff changeset
   750
c2863cfe8a8a graft: allow regrafting ancestors with --force (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21947
diff changeset
   751
graft --force after backout
c2863cfe8a8a graft: allow regrafting ancestors with --force (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21947
diff changeset
   752
c2863cfe8a8a graft: allow regrafting ancestors with --force (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21947
diff changeset
   753
  $ echo abc > a
c2863cfe8a8a graft: allow regrafting ancestors with --force (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21947
diff changeset
   754
  $ hg ci -m 28
c2863cfe8a8a graft: allow regrafting ancestors with --force (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21947
diff changeset
   755
  $ hg backout 28
c2863cfe8a8a graft: allow regrafting ancestors with --force (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21947
diff changeset
   756
  reverting a
24644
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   757
  changeset 29:53177ba928f6 backs out changeset 28:50a516bb8b57
21979
c2863cfe8a8a graft: allow regrafting ancestors with --force (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21947
diff changeset
   758
  $ hg graft 28
24644
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   759
  skipping ancestor revision 28:50a516bb8b57
21979
c2863cfe8a8a graft: allow regrafting ancestors with --force (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21947
diff changeset
   760
  [255]
c2863cfe8a8a graft: allow regrafting ancestors with --force (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21947
diff changeset
   761
  $ hg graft 28 --force
24644
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   762
  grafting 28:50a516bb8b57 "28"
21979
c2863cfe8a8a graft: allow regrafting ancestors with --force (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21947
diff changeset
   763
  merging a
c2863cfe8a8a graft: allow regrafting ancestors with --force (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21947
diff changeset
   764
  $ cat a
c2863cfe8a8a graft: allow regrafting ancestors with --force (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21947
diff changeset
   765
  abc
c2863cfe8a8a graft: allow regrafting ancestors with --force (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21947
diff changeset
   766
21980
f4e5753745e9 graft: make --force apply across continues (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21979
diff changeset
   767
graft --continue after --force
f4e5753745e9 graft: make --force apply across continues (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21979
diff changeset
   768
23463
bb0143e12f35 graft: use a real conflict for the tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 23167
diff changeset
   769
  $ echo def > a
bb0143e12f35 graft: use a real conflict for the tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 23167
diff changeset
   770
  $ hg ci -m 31
21980
f4e5753745e9 graft: make --force apply across continues (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21979
diff changeset
   771
  $ hg graft 28 --force --tool internal:fail
24644
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   772
  grafting 28:50a516bb8b57 "28"
21980
f4e5753745e9 graft: make --force apply across continues (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21979
diff changeset
   773
  abort: unresolved conflicts, can't continue
28963
fc1d75e7a98d graft: use single quotes around command hint
timeless <timeless@mozdev.org>
parents: 28634
diff changeset
   774
  (use 'hg resolve' and 'hg graft --continue')
21980
f4e5753745e9 graft: make --force apply across continues (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21979
diff changeset
   775
  [255]
f4e5753745e9 graft: make --force apply across continues (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21979
diff changeset
   776
  $ hg resolve --all
f4e5753745e9 graft: make --force apply across continues (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21979
diff changeset
   777
  merging a
26614
ef1eb6df7071 simplemerge: move conflict warning message to filemerge
Siddharth Agarwal <sid0@fb.com>
parents: 26611
diff changeset
   778
  warning: conflicts while merging a! (edit, then use 'hg resolve --mark')
23463
bb0143e12f35 graft: use a real conflict for the tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 23167
diff changeset
   779
  [1]
bb0143e12f35 graft: use a real conflict for the tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 23167
diff changeset
   780
  $ echo abc > a
bb0143e12f35 graft: use a real conflict for the tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 23167
diff changeset
   781
  $ hg resolve -m a
21980
f4e5753745e9 graft: make --force apply across continues (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21979
diff changeset
   782
  (no more unresolved files)
27625
cdb9493a7e2f graft: hook afterresolvedstates
timeless <timeless@mozdev.org>
parents: 27173
diff changeset
   783
  continue: hg graft --continue
21980
f4e5753745e9 graft: make --force apply across continues (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21979
diff changeset
   784
  $ hg graft -c
24644
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   785
  grafting 28:50a516bb8b57 "28"
21980
f4e5753745e9 graft: make --force apply across continues (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21979
diff changeset
   786
  $ cat a
f4e5753745e9 graft: make --force apply across continues (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21979
diff changeset
   787
  abc
22302
9472284df4eb graft: fix collision detection with origin revisions that are missing
Mads Kiilerich <madski@unity3d.com>
parents: 21947
diff changeset
   788
9472284df4eb graft: fix collision detection with origin revisions that are missing
Mads Kiilerich <madski@unity3d.com>
parents: 21947
diff changeset
   789
Continue testing same origin policy, using revision numbers from test above
9472284df4eb graft: fix collision detection with origin revisions that are missing
Mads Kiilerich <madski@unity3d.com>
parents: 21947
diff changeset
   790
but do some destructive editing of the repo:
9472284df4eb graft: fix collision detection with origin revisions that are missing
Mads Kiilerich <madski@unity3d.com>
parents: 21947
diff changeset
   791
9472284df4eb graft: fix collision detection with origin revisions that are missing
Mads Kiilerich <madski@unity3d.com>
parents: 21947
diff changeset
   792
  $ hg up -qC 7
9472284df4eb graft: fix collision detection with origin revisions that are missing
Mads Kiilerich <madski@unity3d.com>
parents: 21947
diff changeset
   793
  $ hg tag -l -r 13 tmp
23514
3575f42e1b7b test-graft: use strip extension instead of mq extension
Augie Fackler <raf@durin42.com>
parents: 23508
diff changeset
   794
  $ hg --config extensions.strip= strip 2
23835
aa4a1672583e bundles: do not overwrite existing backup bundles (BC)
Durham Goode <durham@fb.com>
parents: 23749
diff changeset
   795
  saved backup bundle to $TESTTMP/a/.hg/strip-backup/5c095ad7e90f-d323a1e4-backup.hg (glob)
22302
9472284df4eb graft: fix collision detection with origin revisions that are missing
Mads Kiilerich <madski@unity3d.com>
parents: 21947
diff changeset
   796
  $ hg graft tmp
24644
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   797
  skipping already grafted revision 8:7a4785234d87 (2:ef0ef43d49e7 also has unknown origin 5c095ad7e90f)
22302
9472284df4eb graft: fix collision detection with origin revisions that are missing
Mads Kiilerich <madski@unity3d.com>
parents: 21947
diff changeset
   798
  [255]
23504
e172a1f2b5bb tests: test coverage for empty graft
Mads Kiilerich <madski@unity3d.com>
parents: 23482
diff changeset
   799
e172a1f2b5bb tests: test coverage for empty graft
Mads Kiilerich <madski@unity3d.com>
parents: 23482
diff changeset
   800
Empty graft
e172a1f2b5bb tests: test coverage for empty graft
Mads Kiilerich <madski@unity3d.com>
parents: 23482
diff changeset
   801
e172a1f2b5bb tests: test coverage for empty graft
Mads Kiilerich <madski@unity3d.com>
parents: 23482
diff changeset
   802
  $ hg up -qr 26
e172a1f2b5bb tests: test coverage for empty graft
Mads Kiilerich <madski@unity3d.com>
parents: 23482
diff changeset
   803
  $ hg tag -f something
e172a1f2b5bb tests: test coverage for empty graft
Mads Kiilerich <madski@unity3d.com>
parents: 23482
diff changeset
   804
  $ hg graft -qr 27
23508
2164226a5637 graft: drop cset description from empty commit message
Matt Mackall <mpm@selenic.com>
parents: 23507
diff changeset
   805
  $ hg graft -f 27
24644
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   806
  grafting 27:ed6c7e54e319 "28"
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   807
  note: graft of 27:ed6c7e54e319 created no changes to commit
24643
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   808
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   809
  $ cd ..
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   810
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   811
Graft to duplicate a commit
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   812
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   813
  $ hg init graftsibling
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   814
  $ cd graftsibling
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   815
  $ touch a
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   816
  $ hg commit -qAm a
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   817
  $ touch b
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   818
  $ hg commit -qAm b
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   819
  $ hg log -G -T '{rev}\n'
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   820
  @  1
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   821
  |
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   822
  o  0
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   823
  
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   824
  $ hg up -q 0
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   825
  $ hg graft -r 1
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   826
  grafting 1:0e067c57feba "b" (tip)
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   827
  $ hg log -G -T '{rev}\n'
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   828
  @  2
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   829
  |
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   830
  | o  1
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   831
  |/
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   832
  o  0
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   833
  
24644
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   834
Graft to duplicate a commit twice
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   835
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   836
  $ hg up -q 0
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   837
  $ hg graft -r 2
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   838
  grafting 2:044ec77f6389 "b" (tip)
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   839
  $ hg log -G -T '{rev}\n'
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   840
  @  3
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   841
  |
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   842
  | o  2
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   843
  |/
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   844
  | o  1
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   845
  |/
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   846
  o  0
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   847
  
30192
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   848
Graft from behind a move or rename
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   849
==================================
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   850
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   851
NOTE: This is affected by issue5343, and will need updating when it's fixed
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   852
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   853
Possible cases during a regular graft (when ca is between cta and c2):
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   854
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   855
name | c1<-cta | cta<->ca | ca->c2
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   856
A.0  |         |          |
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   857
A.1  |    X    |          |
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   858
A.2  |         |     X    |
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   859
A.3  |         |          |   X
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   860
A.4  |    X    |     X    |
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   861
A.5  |    X    |          |   X
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   862
A.6  |         |     X    |   X
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   863
A.7  |    X    |     X    |   X
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   864
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   865
A.0 is trivial, and doesn't need copy tracking.
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   866
For A.1, a forward rename is recorded in the c1 pass, to be followed later.
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   867
In A.2, the rename is recorded in the c2 pass and followed backwards.
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   868
A.3 is recorded in the c2 pass as a forward rename to be duplicated on target.
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   869
In A.4, both passes of checkcopies record incomplete renames, which are
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   870
then joined in mergecopies to record a rename to be followed.
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   871
In A.5 and A.7, the c1 pass records an incomplete rename, while the c2 pass
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   872
records an incomplete divergence. The incomplete rename is then joined to the
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   873
appropriate side of the incomplete divergence, and the result is recorded as a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   874
divergence. The code doesn't distinguish at all between these two cases, since
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   875
the end result of them is the same: an incomplete divergence joined with an
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   876
incomplete rename into a divergence.
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   877
Finally, A.6 records a divergence entirely in the c2 pass.
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   878
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   879
A.4 has a degenerate case a<-b<-a->a, where checkcopies isn't needed at all.
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   880
A.5 has a special case a<-b<-b->a, which is treated like a<-b->a in a merge.
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   881
A.6 has a special case a<-a<-b->a. Here, checkcopies will find a spurious
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   882
incomplete divergence, which is in fact complete. This is handled later in
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   883
mergecopies.
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   884
A.7 has 4 special cases: a<-b<-a->b (the "ping-pong" case), a<-b<-c->b,
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   885
a<-b<-a->c and a<-b<-c->a. Of these, only the "ping-pong" case is interesting,
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   886
the others are fairly trivial (a<-b<-c->b and a<-b<-a->c proceed like the base
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   887
case, a<-b<-c->a is treated the same as a<-b<-b->a).
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   888
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   889
f5a therefore tests the "ping-pong" rename case, where a file is renamed to the
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   890
same name on both branches, then the rename is backed out on one branch, and
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   891
the backout is grafted to the other branch. This creates a challenging rename
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   892
sequence of a<-b<-a->b in the graft target, topological CA, graft CA and graft
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   893
source, respectively. Since rename detection will run on the c1 side for such a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   894
sequence (as for technical reasons, we split the c1 and c2 sides not at the
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   895
graft CA, but rather at the topological CA), it will pick up a false rename,
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   896
and cause a spurious merge conflict. This false rename is always exactly the
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   897
reverse of the true rename that would be detected on the c2 side, so we can
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   898
correct for it by detecting this condition and reversing as necessary.
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   899
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   900
First, set up the repository with commits to be grafted
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   901
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   902
  $ hg init ../graftmove
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   903
  $ cd ../graftmove
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   904
  $ echo c1a > f1a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   905
  $ echo c2a > f2a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   906
  $ echo c3a > f3a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   907
  $ echo c4a > f4a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   908
  $ echo c5a > f5a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   909
  $ hg ci -qAm A0
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   910
  $ hg mv f1a f1b
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   911
  $ hg mv f3a f3b
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   912
  $ hg mv f5a f5b
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   913
  $ hg ci -qAm B0
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   914
  $ echo c1c > f1b
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   915
  $ hg mv f2a f2c
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   916
  $ hg mv f5b f5a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   917
  $ echo c5c > f5a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   918
  $ hg ci -qAm C0
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   919
  $ hg mv f3b f3d
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   920
  $ echo c4d > f4a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   921
  $ hg ci -qAm D0
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   922
  $ hg log -G
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   923
  @  changeset:   3:b69f5839d2d9
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   924
  |  tag:         tip
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   925
  |  user:        test
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   926
  |  date:        Thu Jan 01 00:00:00 1970 +0000
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   927
  |  summary:     D0
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   928
  |
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   929
  o  changeset:   2:f58c7e2b28fa
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   930
  |  user:        test
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   931
  |  date:        Thu Jan 01 00:00:00 1970 +0000
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   932
  |  summary:     C0
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   933
  |
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   934
  o  changeset:   1:3d7bba921b5d
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   935
  |  user:        test
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   936
  |  date:        Thu Jan 01 00:00:00 1970 +0000
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   937
  |  summary:     B0
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   938
  |
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   939
  o  changeset:   0:11f7a1b56675
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   940
     user:        test
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   941
     date:        Thu Jan 01 00:00:00 1970 +0000
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   942
     summary:     A0
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   943
  
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   944
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   945
Test the cases A.2 (f1x), A.3 (f2x) and a special case of A.6 (f5x) where the
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   946
two renames actually converge to the same name (thus no actual divergence).
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   947
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   948
  $ hg up -q 'desc("A0")'
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   949
  $ HGEDITOR="echo C1 >" hg graft -r 'desc("C0")' --edit
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   950
  grafting 2:f58c7e2b28fa "C0"
30197
0accd5a5ad04 mergecopies: invoke _computenonoverlap for both base and tca during merges
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30192
diff changeset
   951
  merging f1a and f1b to f1a
30192
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   952
  merging f5a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   953
  warning: can't find ancestor for 'f5a' copied from 'f5b'!
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   954
  $ hg status --change .
30197
0accd5a5ad04 mergecopies: invoke _computenonoverlap for both base and tca during merges
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30192
diff changeset
   955
  M f1a
30192
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   956
  M f5a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   957
  A f2c
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   958
  R f2a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   959
  $ hg cat f1a
30197
0accd5a5ad04 mergecopies: invoke _computenonoverlap for both base and tca during merges
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30192
diff changeset
   960
  c1c
30192
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   961
  $ hg cat f1b
30204
1894c830ee74 copies: make _checkcopies handle copy sequences spanning the TCA (issue4028)
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30201
diff changeset
   962
  f1b: no such file in rev c9763722f9bd
30197
0accd5a5ad04 mergecopies: invoke _computenonoverlap for both base and tca during merges
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30192
diff changeset
   963
  [1]
30192
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   964
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   965
Test the cases A.0 (f4x) and A.6 (f3x)
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   966
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   967
  $ HGEDITOR="echo D1 >" hg graft -r 'desc("D0")' --edit
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   968
  grafting 3:b69f5839d2d9 "D0"
30201
856ead835f56 checkcopies: handle divergences contained entirely in tca::ctx
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30197
diff changeset
   969
  note: possible conflict - f3b was renamed multiple times to:
856ead835f56 checkcopies: handle divergences contained entirely in tca::ctx
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30197
diff changeset
   970
   f3d
856ead835f56 checkcopies: handle divergences contained entirely in tca::ctx
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30197
diff changeset
   971
   f3a
30192
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   972
  warning: can't find ancestor for 'f3d' copied from 'f3b'!
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   973
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   974
Set up the repository for some further tests
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   975
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   976
  $ hg up -q "min(desc("A0"))"
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   977
  $ hg mv f1a f1e
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   978
  $ echo c2e > f2a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   979
  $ hg mv f3a f3e
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   980
  $ hg mv f4a f4e
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   981
  $ hg mv f5a f5b
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   982
  $ hg ci -qAm "E0"
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   983
  $ hg log -G
30204
1894c830ee74 copies: make _checkcopies handle copy sequences spanning the TCA (issue4028)
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30201
diff changeset
   984
  @  changeset:   6:6bd1736cab86
30192
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   985
  |  tag:         tip
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   986
  |  parent:      0:11f7a1b56675
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   987
  |  user:        test
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   988
  |  date:        Thu Jan 01 00:00:00 1970 +0000
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   989
  |  summary:     E0
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   990
  |
30204
1894c830ee74 copies: make _checkcopies handle copy sequences spanning the TCA (issue4028)
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30201
diff changeset
   991
  | o  changeset:   5:560daee679da
30192
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   992
  | |  user:        test
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   993
  | |  date:        Thu Jan 01 00:00:00 1970 +0000
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   994
  | |  summary:     D1
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   995
  | |
30204
1894c830ee74 copies: make _checkcopies handle copy sequences spanning the TCA (issue4028)
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30201
diff changeset
   996
  | o  changeset:   4:c9763722f9bd
30192
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   997
  |/   parent:      0:11f7a1b56675
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   998
  |    user:        test
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
   999
  |    date:        Thu Jan 01 00:00:00 1970 +0000
30204
1894c830ee74 copies: make _checkcopies handle copy sequences spanning the TCA (issue4028)
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30201
diff changeset
  1000
  |    summary:     C1
30192
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1001
  |
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1002
  | o  changeset:   3:b69f5839d2d9
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1003
  | |  user:        test
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1004
  | |  date:        Thu Jan 01 00:00:00 1970 +0000
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1005
  | |  summary:     D0
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1006
  | |
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1007
  | o  changeset:   2:f58c7e2b28fa
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1008
  | |  user:        test
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1009
  | |  date:        Thu Jan 01 00:00:00 1970 +0000
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1010
  | |  summary:     C0
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1011
  | |
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1012
  | o  changeset:   1:3d7bba921b5d
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1013
  |/   user:        test
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1014
  |    date:        Thu Jan 01 00:00:00 1970 +0000
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1015
  |    summary:     B0
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1016
  |
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1017
  o  changeset:   0:11f7a1b56675
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1018
     user:        test
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1019
     date:        Thu Jan 01 00:00:00 1970 +0000
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1020
     summary:     A0
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1021
  
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1022
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1023
Test the cases A.4 (f1x), the "ping-pong" special case of A.7 (f5x),
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1024
and A.3 with a local content change to be preserved (f2x).
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1025
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1026
  $ HGEDITOR="echo C2 >" hg graft -r 'desc("C0")' --edit
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1027
  grafting 2:f58c7e2b28fa "C0"
30204
1894c830ee74 copies: make _checkcopies handle copy sequences spanning the TCA (issue4028)
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30201
diff changeset
  1028
  merging f1e and f1b to f1e
30192
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1029
  merging f2a and f2c to f2c
30197
0accd5a5ad04 mergecopies: invoke _computenonoverlap for both base and tca during merges
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30192
diff changeset
  1030
  merging f5b and f5a to f5a
30192
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1031
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1032
Test the cases A.1 (f4x) and A.7 (f3x).
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1033
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1034
  $ HGEDITOR="echo D2 >" hg graft -r 'desc("D0")' --edit
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1035
  grafting 3:b69f5839d2d9 "D0"
30204
1894c830ee74 copies: make _checkcopies handle copy sequences spanning the TCA (issue4028)
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30201
diff changeset
  1036
  note: possible conflict - f3b was renamed multiple times to:
1894c830ee74 copies: make _checkcopies handle copy sequences spanning the TCA (issue4028)
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30201
diff changeset
  1037
   f3e
1894c830ee74 copies: make _checkcopies handle copy sequences spanning the TCA (issue4028)
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30201
diff changeset
  1038
   f3d
30192
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1039
  merging f4e and f4a to f4e
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1040
  warning: can't find ancestor for 'f3d' copied from 'f3b'!
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1041
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1042
Check the results of the grafts tested
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1043
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1044
  $ hg log -CGv --patch --git
30204
1894c830ee74 copies: make _checkcopies handle copy sequences spanning the TCA (issue4028)
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30201
diff changeset
  1045
  @  changeset:   8:93ee502e8b0a
30192
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1046
  |  tag:         tip
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1047
  |  user:        test
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1048
  |  date:        Thu Jan 01 00:00:00 1970 +0000
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1049
  |  files:       f3d f4e
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1050
  |  description:
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1051
  |  D2
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1052
  |
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1053
  |
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1054
  |  diff --git a/f3d b/f3d
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1055
  |  new file mode 100644
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1056
  |  --- /dev/null
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1057
  |  +++ b/f3d
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1058
  |  @@ -0,0 +1,1 @@
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1059
  |  +c3a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1060
  |  diff --git a/f4e b/f4e
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1061
  |  --- a/f4e
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1062
  |  +++ b/f4e
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1063
  |  @@ -1,1 +1,1 @@
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1064
  |  -c4a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1065
  |  +c4d
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1066
  |
30204
1894c830ee74 copies: make _checkcopies handle copy sequences spanning the TCA (issue4028)
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30201
diff changeset
  1067
  o  changeset:   7:539cf145f496
30192
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1068
  |  user:        test
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1069
  |  date:        Thu Jan 01 00:00:00 1970 +0000
30204
1894c830ee74 copies: make _checkcopies handle copy sequences spanning the TCA (issue4028)
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30201
diff changeset
  1070
  |  files:       f1e f2a f2c f5a f5b
1894c830ee74 copies: make _checkcopies handle copy sequences spanning the TCA (issue4028)
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30201
diff changeset
  1071
  |  copies:      f2c (f2a) f5a (f5b)
30192
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1072
  |  description:
30204
1894c830ee74 copies: make _checkcopies handle copy sequences spanning the TCA (issue4028)
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30201
diff changeset
  1073
  |  C2
30192
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1074
  |
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1075
  |
30197
0accd5a5ad04 mergecopies: invoke _computenonoverlap for both base and tca during merges
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30192
diff changeset
  1076
  |  diff --git a/f1e b/f1e
0accd5a5ad04 mergecopies: invoke _computenonoverlap for both base and tca during merges
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30192
diff changeset
  1077
  |  --- a/f1e
0accd5a5ad04 mergecopies: invoke _computenonoverlap for both base and tca during merges
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30192
diff changeset
  1078
  |  +++ b/f1e
0accd5a5ad04 mergecopies: invoke _computenonoverlap for both base and tca during merges
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30192
diff changeset
  1079
  |  @@ -1,1 +1,1 @@
0accd5a5ad04 mergecopies: invoke _computenonoverlap for both base and tca during merges
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30192
diff changeset
  1080
  |  -c1a
0accd5a5ad04 mergecopies: invoke _computenonoverlap for both base and tca during merges
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30192
diff changeset
  1081
  |  +c1c
30192
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1082
  |  diff --git a/f2a b/f2c
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1083
  |  rename from f2a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1084
  |  rename to f2c
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1085
  |  diff --git a/f5b b/f5a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1086
  |  rename from f5b
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1087
  |  rename to f5a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1088
  |  --- a/f5b
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1089
  |  +++ b/f5a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1090
  |  @@ -1,1 +1,1 @@
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1091
  |  -c5a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1092
  |  +c5c
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1093
  |
30204
1894c830ee74 copies: make _checkcopies handle copy sequences spanning the TCA (issue4028)
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30201
diff changeset
  1094
  o  changeset:   6:6bd1736cab86
30192
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1095
  |  parent:      0:11f7a1b56675
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1096
  |  user:        test
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1097
  |  date:        Thu Jan 01 00:00:00 1970 +0000
30204
1894c830ee74 copies: make _checkcopies handle copy sequences spanning the TCA (issue4028)
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30201
diff changeset
  1098
  |  files:       f1a f1e f2a f3a f3e f4a f4e f5a f5b
30192
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1099
  |  copies:      f1e (f1a) f3e (f3a) f4e (f4a) f5b (f5a)
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1100
  |  description:
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1101
  |  E0
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1102
  |
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1103
  |
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1104
  |  diff --git a/f1a b/f1e
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1105
  |  rename from f1a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1106
  |  rename to f1e
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1107
  |  diff --git a/f2a b/f2a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1108
  |  --- a/f2a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1109
  |  +++ b/f2a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1110
  |  @@ -1,1 +1,1 @@
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1111
  |  -c2a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1112
  |  +c2e
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1113
  |  diff --git a/f3a b/f3e
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1114
  |  rename from f3a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1115
  |  rename to f3e
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1116
  |  diff --git a/f4a b/f4e
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1117
  |  rename from f4a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1118
  |  rename to f4e
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1119
  |  diff --git a/f5a b/f5b
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1120
  |  rename from f5a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1121
  |  rename to f5b
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1122
  |
30204
1894c830ee74 copies: make _checkcopies handle copy sequences spanning the TCA (issue4028)
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30201
diff changeset
  1123
  | o  changeset:   5:560daee679da
30192
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1124
  | |  user:        test
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1125
  | |  date:        Thu Jan 01 00:00:00 1970 +0000
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1126
  | |  files:       f3d f4a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1127
  | |  description:
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1128
  | |  D1
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1129
  | |
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1130
  | |
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1131
  | |  diff --git a/f3d b/f3d
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1132
  | |  new file mode 100644
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1133
  | |  --- /dev/null
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1134
  | |  +++ b/f3d
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1135
  | |  @@ -0,0 +1,1 @@
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1136
  | |  +c3a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1137
  | |  diff --git a/f4a b/f4a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1138
  | |  --- a/f4a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1139
  | |  +++ b/f4a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1140
  | |  @@ -1,1 +1,1 @@
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1141
  | |  -c4a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1142
  | |  +c4d
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1143
  | |
30204
1894c830ee74 copies: make _checkcopies handle copy sequences spanning the TCA (issue4028)
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30201
diff changeset
  1144
  | o  changeset:   4:c9763722f9bd
30192
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1145
  |/   parent:      0:11f7a1b56675
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1146
  |    user:        test
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1147
  |    date:        Thu Jan 01 00:00:00 1970 +0000
30197
0accd5a5ad04 mergecopies: invoke _computenonoverlap for both base and tca during merges
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30192
diff changeset
  1148
  |    files:       f1a f2a f2c f5a
30192
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1149
  |    copies:      f2c (f2a)
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1150
  |    description:
30204
1894c830ee74 copies: make _checkcopies handle copy sequences spanning the TCA (issue4028)
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30201
diff changeset
  1151
  |    C1
30192
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1152
  |
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1153
  |
30197
0accd5a5ad04 mergecopies: invoke _computenonoverlap for both base and tca during merges
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30192
diff changeset
  1154
  |    diff --git a/f1a b/f1a
0accd5a5ad04 mergecopies: invoke _computenonoverlap for both base and tca during merges
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30192
diff changeset
  1155
  |    --- a/f1a
0accd5a5ad04 mergecopies: invoke _computenonoverlap for both base and tca during merges
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30192
diff changeset
  1156
  |    +++ b/f1a
0accd5a5ad04 mergecopies: invoke _computenonoverlap for both base and tca during merges
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30192
diff changeset
  1157
  |    @@ -1,1 +1,1 @@
0accd5a5ad04 mergecopies: invoke _computenonoverlap for both base and tca during merges
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30192
diff changeset
  1158
  |    -c1a
30192
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1159
  |    +c1c
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1160
  |    diff --git a/f2a b/f2c
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1161
  |    rename from f2a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1162
  |    rename to f2c
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1163
  |    diff --git a/f5a b/f5a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1164
  |    --- a/f5a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1165
  |    +++ b/f5a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1166
  |    @@ -1,1 +1,1 @@
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1167
  |    -c5a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1168
  |    +c5c
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1169
  |
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1170
  | o  changeset:   3:b69f5839d2d9
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1171
  | |  user:        test
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1172
  | |  date:        Thu Jan 01 00:00:00 1970 +0000
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1173
  | |  files:       f3b f3d f4a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1174
  | |  copies:      f3d (f3b)
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1175
  | |  description:
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1176
  | |  D0
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1177
  | |
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1178
  | |
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1179
  | |  diff --git a/f3b b/f3d
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1180
  | |  rename from f3b
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1181
  | |  rename to f3d
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1182
  | |  diff --git a/f4a b/f4a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1183
  | |  --- a/f4a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1184
  | |  +++ b/f4a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1185
  | |  @@ -1,1 +1,1 @@
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1186
  | |  -c4a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1187
  | |  +c4d
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1188
  | |
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1189
  | o  changeset:   2:f58c7e2b28fa
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1190
  | |  user:        test
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1191
  | |  date:        Thu Jan 01 00:00:00 1970 +0000
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1192
  | |  files:       f1b f2a f2c f5a f5b
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1193
  | |  copies:      f2c (f2a) f5a (f5b)
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1194
  | |  description:
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1195
  | |  C0
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1196
  | |
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1197
  | |
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1198
  | |  diff --git a/f1b b/f1b
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1199
  | |  --- a/f1b
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1200
  | |  +++ b/f1b
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1201
  | |  @@ -1,1 +1,1 @@
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1202
  | |  -c1a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1203
  | |  +c1c
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1204
  | |  diff --git a/f2a b/f2c
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1205
  | |  rename from f2a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1206
  | |  rename to f2c
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1207
  | |  diff --git a/f5b b/f5a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1208
  | |  rename from f5b
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1209
  | |  rename to f5a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1210
  | |  --- a/f5b
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1211
  | |  +++ b/f5a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1212
  | |  @@ -1,1 +1,1 @@
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1213
  | |  -c5a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1214
  | |  +c5c
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1215
  | |
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1216
  | o  changeset:   1:3d7bba921b5d
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1217
  |/   user:        test
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1218
  |    date:        Thu Jan 01 00:00:00 1970 +0000
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1219
  |    files:       f1a f1b f3a f3b f5a f5b
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1220
  |    copies:      f1b (f1a) f3b (f3a) f5b (f5a)
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1221
  |    description:
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1222
  |    B0
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1223
  |
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1224
  |
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1225
  |    diff --git a/f1a b/f1b
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1226
  |    rename from f1a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1227
  |    rename to f1b
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1228
  |    diff --git a/f3a b/f3b
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1229
  |    rename from f3a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1230
  |    rename to f3b
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1231
  |    diff --git a/f5a b/f5b
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1232
  |    rename from f5a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1233
  |    rename to f5b
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1234
  |
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1235
  o  changeset:   0:11f7a1b56675
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1236
     user:        test
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1237
     date:        Thu Jan 01 00:00:00 1970 +0000
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1238
     files:       f1a f2a f3a f4a f5a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1239
     description:
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1240
     A0
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1241
  
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1242
  
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1243
     diff --git a/f1a b/f1a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1244
     new file mode 100644
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1245
     --- /dev/null
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1246
     +++ b/f1a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1247
     @@ -0,0 +1,1 @@
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1248
     +c1a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1249
     diff --git a/f2a b/f2a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1250
     new file mode 100644
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1251
     --- /dev/null
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1252
     +++ b/f2a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1253
     @@ -0,0 +1,1 @@
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1254
     +c2a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1255
     diff --git a/f3a b/f3a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1256
     new file mode 100644
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1257
     --- /dev/null
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1258
     +++ b/f3a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1259
     @@ -0,0 +1,1 @@
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1260
     +c3a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1261
     diff --git a/f4a b/f4a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1262
     new file mode 100644
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1263
     --- /dev/null
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1264
     +++ b/f4a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1265
     @@ -0,0 +1,1 @@
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1266
     +c4a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1267
     diff --git a/f5a b/f5a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1268
     new file mode 100644
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1269
     --- /dev/null
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1270
     +++ b/f5a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1271
     @@ -0,0 +1,1 @@
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1272
     +c5a
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1273
  
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1274
  $ hg cat f2c
509d29255c04 tests: introduce tests for grafting through renames
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30188
diff changeset
  1275
  c2e
30229
69ffbbe73dd0 merge: avoid superfluous filemerges when grafting through renames (issue5407)
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30204
diff changeset
  1276
69ffbbe73dd0 merge: avoid superfluous filemerges when grafting through renames (issue5407)
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30204
diff changeset
  1277
Check superfluous filemerge of files renamed in the past but untouched by graft
69ffbbe73dd0 merge: avoid superfluous filemerges when grafting through renames (issue5407)
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30204
diff changeset
  1278
69ffbbe73dd0 merge: avoid superfluous filemerges when grafting through renames (issue5407)
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30204
diff changeset
  1279
  $ echo a > a
69ffbbe73dd0 merge: avoid superfluous filemerges when grafting through renames (issue5407)
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30204
diff changeset
  1280
  $ hg ci -qAma
69ffbbe73dd0 merge: avoid superfluous filemerges when grafting through renames (issue5407)
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30204
diff changeset
  1281
  $ hg mv a b
69ffbbe73dd0 merge: avoid superfluous filemerges when grafting through renames (issue5407)
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30204
diff changeset
  1282
  $ echo b > b
69ffbbe73dd0 merge: avoid superfluous filemerges when grafting through renames (issue5407)
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30204
diff changeset
  1283
  $ hg ci -qAmb
69ffbbe73dd0 merge: avoid superfluous filemerges when grafting through renames (issue5407)
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30204
diff changeset
  1284
  $ echo c > c
69ffbbe73dd0 merge: avoid superfluous filemerges when grafting through renames (issue5407)
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30204
diff changeset
  1285
  $ hg ci -qAmc
69ffbbe73dd0 merge: avoid superfluous filemerges when grafting through renames (issue5407)
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30204
diff changeset
  1286
  $ hg up -q .~2
69ffbbe73dd0 merge: avoid superfluous filemerges when grafting through renames (issue5407)
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30204
diff changeset
  1287
  $ hg graft tip -qt:fail
30581
43a9e02a7b7f graft: support grafting changes to new file in renamed directory (issue5436)
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30460
diff changeset
  1288
43a9e02a7b7f graft: support grafting changes to new file in renamed directory (issue5436)
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30460
diff changeset
  1289
  $ cd ..
43a9e02a7b7f graft: support grafting changes to new file in renamed directory (issue5436)
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30460
diff changeset
  1290
43a9e02a7b7f graft: support grafting changes to new file in renamed directory (issue5436)
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30460
diff changeset
  1291
Graft a change into a new file previously grafted into a renamed directory
43a9e02a7b7f graft: support grafting changes to new file in renamed directory (issue5436)
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30460
diff changeset
  1292
43a9e02a7b7f graft: support grafting changes to new file in renamed directory (issue5436)
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30460
diff changeset
  1293
  $ hg init dirmovenewfile
43a9e02a7b7f graft: support grafting changes to new file in renamed directory (issue5436)
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30460
diff changeset
  1294
  $ cd dirmovenewfile
43a9e02a7b7f graft: support grafting changes to new file in renamed directory (issue5436)
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30460
diff changeset
  1295
  $ mkdir a
43a9e02a7b7f graft: support grafting changes to new file in renamed directory (issue5436)
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30460
diff changeset
  1296
  $ echo a > a/a
43a9e02a7b7f graft: support grafting changes to new file in renamed directory (issue5436)
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30460
diff changeset
  1297
  $ hg ci -qAma
43a9e02a7b7f graft: support grafting changes to new file in renamed directory (issue5436)
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30460
diff changeset
  1298
  $ echo x > a/x
43a9e02a7b7f graft: support grafting changes to new file in renamed directory (issue5436)
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30460
diff changeset
  1299
  $ hg ci -qAmx
43a9e02a7b7f graft: support grafting changes to new file in renamed directory (issue5436)
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30460
diff changeset
  1300
  $ hg up -q 0
43a9e02a7b7f graft: support grafting changes to new file in renamed directory (issue5436)
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30460
diff changeset
  1301
  $ hg mv -q a b
43a9e02a7b7f graft: support grafting changes to new file in renamed directory (issue5436)
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30460
diff changeset
  1302
  $ hg ci -qAmb
43a9e02a7b7f graft: support grafting changes to new file in renamed directory (issue5436)
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30460
diff changeset
  1303
  $ hg graft -q 1 # a/x grafted as b/x, but no copy information recorded
43a9e02a7b7f graft: support grafting changes to new file in renamed directory (issue5436)
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30460
diff changeset
  1304
  $ hg up -q 1
43a9e02a7b7f graft: support grafting changes to new file in renamed directory (issue5436)
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30460
diff changeset
  1305
  $ echo y > a/x
43a9e02a7b7f graft: support grafting changes to new file in renamed directory (issue5436)
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30460
diff changeset
  1306
  $ hg ci -qAmy
43a9e02a7b7f graft: support grafting changes to new file in renamed directory (issue5436)
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30460
diff changeset
  1307
  $ hg up -q 3
43a9e02a7b7f graft: support grafting changes to new file in renamed directory (issue5436)
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30460
diff changeset
  1308
  $ hg graft -q 4
43a9e02a7b7f graft: support grafting changes to new file in renamed directory (issue5436)
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30460
diff changeset
  1309
  $ hg status --change .
43a9e02a7b7f graft: support grafting changes to new file in renamed directory (issue5436)
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30460
diff changeset
  1310
  M b/x
43a9e02a7b7f graft: support grafting changes to new file in renamed directory (issue5436)
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30460
diff changeset
  1311
32204
78fb569e2c33 graft: test coverage of grafts and how merges can break duplicate detection
Mads Kiilerich <madski@unity3d.com>
parents: 31452
diff changeset
  1312
Prepare for test of skipped changesets and how merges can influence it:
78fb569e2c33 graft: test coverage of grafts and how merges can break duplicate detection
Mads Kiilerich <madski@unity3d.com>
parents: 31452
diff changeset
  1313
78fb569e2c33 graft: test coverage of grafts and how merges can break duplicate detection
Mads Kiilerich <madski@unity3d.com>
parents: 31452
diff changeset
  1314
  $ hg merge -q -r 1 --tool :local
78fb569e2c33 graft: test coverage of grafts and how merges can break duplicate detection
Mads Kiilerich <madski@unity3d.com>
parents: 31452
diff changeset
  1315
  $ hg ci -m m
78fb569e2c33 graft: test coverage of grafts and how merges can break duplicate detection
Mads Kiilerich <madski@unity3d.com>
parents: 31452
diff changeset
  1316
  $ echo xx >> b/x
78fb569e2c33 graft: test coverage of grafts and how merges can break duplicate detection
Mads Kiilerich <madski@unity3d.com>
parents: 31452
diff changeset
  1317
  $ hg ci -m xx
78fb569e2c33 graft: test coverage of grafts and how merges can break duplicate detection
Mads Kiilerich <madski@unity3d.com>
parents: 31452
diff changeset
  1318
78fb569e2c33 graft: test coverage of grafts and how merges can break duplicate detection
Mads Kiilerich <madski@unity3d.com>
parents: 31452
diff changeset
  1319
  $ hg log -G -T '{rev} {desc|firstline}'
78fb569e2c33 graft: test coverage of grafts and how merges can break duplicate detection
Mads Kiilerich <madski@unity3d.com>
parents: 31452
diff changeset
  1320
  @  7 xx
78fb569e2c33 graft: test coverage of grafts and how merges can break duplicate detection
Mads Kiilerich <madski@unity3d.com>
parents: 31452
diff changeset
  1321
  |
78fb569e2c33 graft: test coverage of grafts and how merges can break duplicate detection
Mads Kiilerich <madski@unity3d.com>
parents: 31452
diff changeset
  1322
  o    6 m
78fb569e2c33 graft: test coverage of grafts and how merges can break duplicate detection
Mads Kiilerich <madski@unity3d.com>
parents: 31452
diff changeset
  1323
  |\
78fb569e2c33 graft: test coverage of grafts and how merges can break duplicate detection
Mads Kiilerich <madski@unity3d.com>
parents: 31452
diff changeset
  1324
  | o  5 y
78fb569e2c33 graft: test coverage of grafts and how merges can break duplicate detection
Mads Kiilerich <madski@unity3d.com>
parents: 31452
diff changeset
  1325
  | |
78fb569e2c33 graft: test coverage of grafts and how merges can break duplicate detection
Mads Kiilerich <madski@unity3d.com>
parents: 31452
diff changeset
  1326
  +---o  4 y
78fb569e2c33 graft: test coverage of grafts and how merges can break duplicate detection
Mads Kiilerich <madski@unity3d.com>
parents: 31452
diff changeset
  1327
  | |
78fb569e2c33 graft: test coverage of grafts and how merges can break duplicate detection
Mads Kiilerich <madski@unity3d.com>
parents: 31452
diff changeset
  1328
  | o  3 x
78fb569e2c33 graft: test coverage of grafts and how merges can break duplicate detection
Mads Kiilerich <madski@unity3d.com>
parents: 31452
diff changeset
  1329
  | |
78fb569e2c33 graft: test coverage of grafts and how merges can break duplicate detection
Mads Kiilerich <madski@unity3d.com>
parents: 31452
diff changeset
  1330
  | o  2 b
78fb569e2c33 graft: test coverage of grafts and how merges can break duplicate detection
Mads Kiilerich <madski@unity3d.com>
parents: 31452
diff changeset
  1331
  | |
78fb569e2c33 graft: test coverage of grafts and how merges can break duplicate detection
Mads Kiilerich <madski@unity3d.com>
parents: 31452
diff changeset
  1332
  o |  1 x
78fb569e2c33 graft: test coverage of grafts and how merges can break duplicate detection
Mads Kiilerich <madski@unity3d.com>
parents: 31452
diff changeset
  1333
  |/
78fb569e2c33 graft: test coverage of grafts and how merges can break duplicate detection
Mads Kiilerich <madski@unity3d.com>
parents: 31452
diff changeset
  1334
  o  0 a
78fb569e2c33 graft: test coverage of grafts and how merges can break duplicate detection
Mads Kiilerich <madski@unity3d.com>
parents: 31452
diff changeset
  1335
  
78fb569e2c33 graft: test coverage of grafts and how merges can break duplicate detection
Mads Kiilerich <madski@unity3d.com>
parents: 31452
diff changeset
  1336
Grafting of plain changes correctly detects that 3 and 5 should be skipped:
78fb569e2c33 graft: test coverage of grafts and how merges can break duplicate detection
Mads Kiilerich <madski@unity3d.com>
parents: 31452
diff changeset
  1337
78fb569e2c33 graft: test coverage of grafts and how merges can break duplicate detection
Mads Kiilerich <madski@unity3d.com>
parents: 31452
diff changeset
  1338
  $ hg up -qCr 4
78fb569e2c33 graft: test coverage of grafts and how merges can break duplicate detection
Mads Kiilerich <madski@unity3d.com>
parents: 31452
diff changeset
  1339
  $ hg graft --tool :local -r 2::5
78fb569e2c33 graft: test coverage of grafts and how merges can break duplicate detection
Mads Kiilerich <madski@unity3d.com>
parents: 31452
diff changeset
  1340
  skipping already grafted revision 3:ca093ca2f1d9 (was grafted from 1:13ec5badbf2a)
78fb569e2c33 graft: test coverage of grafts and how merges can break duplicate detection
Mads Kiilerich <madski@unity3d.com>
parents: 31452
diff changeset
  1341
  skipping already grafted revision 5:43e9eb70dab0 (was grafted from 4:6c9a1289e5f1)
78fb569e2c33 graft: test coverage of grafts and how merges can break duplicate detection
Mads Kiilerich <madski@unity3d.com>
parents: 31452
diff changeset
  1342
  grafting 2:42127f193bcd "b"
78fb569e2c33 graft: test coverage of grafts and how merges can break duplicate detection
Mads Kiilerich <madski@unity3d.com>
parents: 31452
diff changeset
  1343
32205
b4e1e30528c7 graft: fix graft across merges of duplicates of grafted changes
Mads Kiilerich <madski@unity3d.com>
parents: 32204
diff changeset
  1344
Extending the graft range to include a (skipped) merge of 3 will not prevent us from
b4e1e30528c7 graft: fix graft across merges of duplicates of grafted changes
Mads Kiilerich <madski@unity3d.com>
parents: 32204
diff changeset
  1345
also detecting that both 3 and 5 should be skipped:
32204
78fb569e2c33 graft: test coverage of grafts and how merges can break duplicate detection
Mads Kiilerich <madski@unity3d.com>
parents: 31452
diff changeset
  1346
78fb569e2c33 graft: test coverage of grafts and how merges can break duplicate detection
Mads Kiilerich <madski@unity3d.com>
parents: 31452
diff changeset
  1347
  $ hg up -qCr 4
78fb569e2c33 graft: test coverage of grafts and how merges can break duplicate detection
Mads Kiilerich <madski@unity3d.com>
parents: 31452
diff changeset
  1348
  $ hg graft --tool :local -r 2::7
78fb569e2c33 graft: test coverage of grafts and how merges can break duplicate detection
Mads Kiilerich <madski@unity3d.com>
parents: 31452
diff changeset
  1349
  skipping ungraftable merge revision 6
32205
b4e1e30528c7 graft: fix graft across merges of duplicates of grafted changes
Mads Kiilerich <madski@unity3d.com>
parents: 32204
diff changeset
  1350
  skipping already grafted revision 3:ca093ca2f1d9 (was grafted from 1:13ec5badbf2a)
32204
78fb569e2c33 graft: test coverage of grafts and how merges can break duplicate detection
Mads Kiilerich <madski@unity3d.com>
parents: 31452
diff changeset
  1351
  skipping already grafted revision 5:43e9eb70dab0 (was grafted from 4:6c9a1289e5f1)
78fb569e2c33 graft: test coverage of grafts and how merges can break duplicate detection
Mads Kiilerich <madski@unity3d.com>
parents: 31452
diff changeset
  1352
  grafting 2:42127f193bcd "b"
78fb569e2c33 graft: test coverage of grafts and how merges can break duplicate detection
Mads Kiilerich <madski@unity3d.com>
parents: 31452
diff changeset
  1353
  grafting 7:d3c3f2b38ecc "xx"
78fb569e2c33 graft: test coverage of grafts and how merges can break duplicate detection
Mads Kiilerich <madski@unity3d.com>
parents: 31452
diff changeset
  1354
  note: graft of 7:d3c3f2b38ecc created no changes to commit
78fb569e2c33 graft: test coverage of grafts and how merges can break duplicate detection
Mads Kiilerich <madski@unity3d.com>
parents: 31452
diff changeset
  1355
30581
43a9e02a7b7f graft: support grafting changes to new file in renamed directory (issue5436)
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 30460
diff changeset
  1356
  $ cd ..