tests/test-graft.t
author Martin von Zweigbergk <martinvonz@google.com>
Fri, 27 Dec 2019 15:14:19 -0800
changeset 44091 3df0bd706c40
parent 44044 f3ad014b6a53
child 44197 17e12938f8e7
permissions -rw-r--r--
graftcopies: use _filter() for filtering out invalid copies `graftcopies()` (formerly called `duplicatecopies()`) checked that the copy destination existed in the working copy, but it didn't check that copy source existed in the parent of the working copy. In `test-graft.t` we can see that as warnings about not finding ancestors of the copied files, and also empty commits getting created. This patch uses the existing `_filter()` function for filtering out invalid copies. In addition to the aforementioned types, that also includes copies where source and destination is the same. Differential Revision: https://phab.mercurial-scm.org/D7859
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
40434
3c0d5016b2be graft: introduce --base option for using custom base revision while merging
Mads Kiilerich <mads@kiilerich.com>
parents: 39480
diff changeset
    28
  $ hg merge -q default --tool internal:local # for conflicts in e, choose 5 and ignore 4
15361
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
  
40434
3c0d5016b2be graft: introduce --base option for using custom base revision while merging
Mads Kiilerich <mads@kiilerich.com>
parents: 39480
diff changeset
    49
Test --base for grafting the merge of 4 from the perspective of 5, thus only getting the change to d
3c0d5016b2be graft: introduce --base option for using custom base revision while merging
Mads Kiilerich <mads@kiilerich.com>
parents: 39480
diff changeset
    50
3c0d5016b2be graft: introduce --base option for using custom base revision while merging
Mads Kiilerich <mads@kiilerich.com>
parents: 39480
diff changeset
    51
  $ hg up -cqr 3
3c0d5016b2be graft: introduce --base option for using custom base revision while merging
Mads Kiilerich <mads@kiilerich.com>
parents: 39480
diff changeset
    52
  $ hg graft -r 6 --base 5
3c0d5016b2be graft: introduce --base option for using custom base revision while merging
Mads Kiilerich <mads@kiilerich.com>
parents: 39480
diff changeset
    53
  grafting 6:25a2b029d3ae "6" (tip)
3c0d5016b2be graft: introduce --base option for using custom base revision while merging
Mads Kiilerich <mads@kiilerich.com>
parents: 39480
diff changeset
    54
  merging e
3c0d5016b2be graft: introduce --base option for using custom base revision while merging
Mads Kiilerich <mads@kiilerich.com>
parents: 39480
diff changeset
    55
  $ hg st --change .
3c0d5016b2be graft: introduce --base option for using custom base revision while merging
Mads Kiilerich <mads@kiilerich.com>
parents: 39480
diff changeset
    56
  M d
3c0d5016b2be graft: introduce --base option for using custom base revision while merging
Mads Kiilerich <mads@kiilerich.com>
parents: 39480
diff changeset
    57
3c0d5016b2be graft: introduce --base option for using custom base revision while merging
Mads Kiilerich <mads@kiilerich.com>
parents: 39480
diff changeset
    58
  $ hg -q strip . --config extensions.strip=
3c0d5016b2be graft: introduce --base option for using custom base revision while merging
Mads Kiilerich <mads@kiilerich.com>
parents: 39480
diff changeset
    59
3c0d5016b2be graft: introduce --base option for using custom base revision while merging
Mads Kiilerich <mads@kiilerich.com>
parents: 39480
diff changeset
    60
Test --base for collapsing changesets 2 and 3, thus getting both b and c
3c0d5016b2be graft: introduce --base option for using custom base revision while merging
Mads Kiilerich <mads@kiilerich.com>
parents: 39480
diff changeset
    61
3c0d5016b2be graft: introduce --base option for using custom base revision while merging
Mads Kiilerich <mads@kiilerich.com>
parents: 39480
diff changeset
    62
  $ hg up -cqr 0
3c0d5016b2be graft: introduce --base option for using custom base revision while merging
Mads Kiilerich <mads@kiilerich.com>
parents: 39480
diff changeset
    63
  $ hg graft -r 3 --base 1
3c0d5016b2be graft: introduce --base option for using custom base revision while merging
Mads Kiilerich <mads@kiilerich.com>
parents: 39480
diff changeset
    64
  grafting 3:4c60f11aa304 "3"
3c0d5016b2be graft: introduce --base option for using custom base revision while merging
Mads Kiilerich <mads@kiilerich.com>
parents: 39480
diff changeset
    65
  merging a and b to b
3c0d5016b2be graft: introduce --base option for using custom base revision while merging
Mads Kiilerich <mads@kiilerich.com>
parents: 39480
diff changeset
    66
  merging a and c to c
3c0d5016b2be graft: introduce --base option for using custom base revision while merging
Mads Kiilerich <mads@kiilerich.com>
parents: 39480
diff changeset
    67
  $ hg st --change .
3c0d5016b2be graft: introduce --base option for using custom base revision while merging
Mads Kiilerich <mads@kiilerich.com>
parents: 39480
diff changeset
    68
  A b
3c0d5016b2be graft: introduce --base option for using custom base revision while merging
Mads Kiilerich <mads@kiilerich.com>
parents: 39480
diff changeset
    69
  A c
3c0d5016b2be graft: introduce --base option for using custom base revision while merging
Mads Kiilerich <mads@kiilerich.com>
parents: 39480
diff changeset
    70
  R a
3c0d5016b2be graft: introduce --base option for using custom base revision while merging
Mads Kiilerich <mads@kiilerich.com>
parents: 39480
diff changeset
    71
3c0d5016b2be graft: introduce --base option for using custom base revision while merging
Mads Kiilerich <mads@kiilerich.com>
parents: 39480
diff changeset
    72
  $ hg -q strip . --config extensions.strip=
3c0d5016b2be graft: introduce --base option for using custom base revision while merging
Mads Kiilerich <mads@kiilerich.com>
parents: 39480
diff changeset
    73
3c0d5016b2be graft: introduce --base option for using custom base revision while merging
Mads Kiilerich <mads@kiilerich.com>
parents: 39480
diff changeset
    74
Specifying child as --base revision fails safely (perhaps slightly confusing, but consistent)
3c0d5016b2be graft: introduce --base option for using custom base revision while merging
Mads Kiilerich <mads@kiilerich.com>
parents: 39480
diff changeset
    75
3c0d5016b2be graft: introduce --base option for using custom base revision while merging
Mads Kiilerich <mads@kiilerich.com>
parents: 39480
diff changeset
    76
  $ hg graft -r 2 --base 3
3c0d5016b2be graft: introduce --base option for using custom base revision while merging
Mads Kiilerich <mads@kiilerich.com>
parents: 39480
diff changeset
    77
  grafting 2:5c095ad7e90f "2"
42222
57203e0210f8 copies: calculate mergecopies() based on pathcopies()
Martin von Zweigbergk <martinvonz@google.com>
parents: 42169
diff changeset
    78
  note: possible conflict - c was deleted and renamed to:
57203e0210f8 copies: calculate mergecopies() based on pathcopies()
Martin von Zweigbergk <martinvonz@google.com>
parents: 42169
diff changeset
    79
   a
40434
3c0d5016b2be graft: introduce --base option for using custom base revision while merging
Mads Kiilerich <mads@kiilerich.com>
parents: 39480
diff changeset
    80
  note: graft of 2:5c095ad7e90f created no changes to commit
3c0d5016b2be graft: introduce --base option for using custom base revision while merging
Mads Kiilerich <mads@kiilerich.com>
parents: 39480
diff changeset
    81
28121
bd97ed121016 graft: suggest the correct tool to continue (not graft)
timeless <timeless@mozdev.org>
parents: 28052
diff changeset
    82
Can't continue without starting:
bd97ed121016 graft: suggest the correct tool to continue (not graft)
timeless <timeless@mozdev.org>
parents: 28052
diff changeset
    83
40434
3c0d5016b2be graft: introduce --base option for using custom base revision while merging
Mads Kiilerich <mads@kiilerich.com>
parents: 39480
diff changeset
    84
  $ hg -q up -cr tip
28121
bd97ed121016 graft: suggest the correct tool to continue (not graft)
timeless <timeless@mozdev.org>
parents: 28052
diff changeset
    85
  $ hg rm -q e
bd97ed121016 graft: suggest the correct tool to continue (not graft)
timeless <timeless@mozdev.org>
parents: 28052
diff changeset
    86
  $ hg graft --continue
bd97ed121016 graft: suggest the correct tool to continue (not graft)
timeless <timeless@mozdev.org>
parents: 28052
diff changeset
    87
  abort: no graft in progress
bd97ed121016 graft: suggest the correct tool to continue (not graft)
timeless <timeless@mozdev.org>
parents: 28052
diff changeset
    88
  [255]
bd97ed121016 graft: suggest the correct tool to continue (not graft)
timeless <timeless@mozdev.org>
parents: 28052
diff changeset
    89
  $ hg revert -r . -q e
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    90
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    91
Need to specify a rev:
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    92
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    93
  $ hg graft
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    94
  abort: no revisions specified
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    95
  [255]
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    96
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    97
Can't graft ancestor:
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    98
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    99
  $ hg graft 1 2
23507
67045b5a903a graft: show hashes in user-facing messages
Mads Kiilerich <madski@unity3d.com>
parents: 23506
diff changeset
   100
  skipping ancestor revision 1:5d205f8b35b6
67045b5a903a graft: show hashes in user-facing messages
Mads Kiilerich <madski@unity3d.com>
parents: 23506
diff changeset
   101
  skipping ancestor revision 2:5c095ad7e90f
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   102
  [255]
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   103
16992
55e7f352b1d3 graft: allow -r to specify revisions
Thomas Arendsen Hein <thomas@intevation.de>
parents: 16913
diff changeset
   104
Specify revisions with -r:
55e7f352b1d3 graft: allow -r to specify revisions
Thomas Arendsen Hein <thomas@intevation.de>
parents: 16913
diff changeset
   105
55e7f352b1d3 graft: allow -r to specify revisions
Thomas Arendsen Hein <thomas@intevation.de>
parents: 16913
diff changeset
   106
  $ hg graft -r 1 -r 2
23507
67045b5a903a graft: show hashes in user-facing messages
Mads Kiilerich <madski@unity3d.com>
parents: 23506
diff changeset
   107
  skipping ancestor revision 1:5d205f8b35b6
67045b5a903a graft: show hashes in user-facing messages
Mads Kiilerich <madski@unity3d.com>
parents: 23506
diff changeset
   108
  skipping ancestor revision 2:5c095ad7e90f
16992
55e7f352b1d3 graft: allow -r to specify revisions
Thomas Arendsen Hein <thomas@intevation.de>
parents: 16913
diff changeset
   109
  [255]
55e7f352b1d3 graft: allow -r to specify revisions
Thomas Arendsen Hein <thomas@intevation.de>
parents: 16913
diff changeset
   110
55e7f352b1d3 graft: allow -r to specify revisions
Thomas Arendsen Hein <thomas@intevation.de>
parents: 16913
diff changeset
   111
  $ 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
   112
  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
   113
  skipping ancestor revision 2:5c095ad7e90f
67045b5a903a graft: show hashes in user-facing messages
Mads Kiilerich <madski@unity3d.com>
parents: 23506
diff changeset
   114
  skipping ancestor revision 1:5d205f8b35b6
16992
55e7f352b1d3 graft: allow -r to specify revisions
Thomas Arendsen Hein <thomas@intevation.de>
parents: 16913
diff changeset
   115
  [255]
55e7f352b1d3 graft: allow -r to specify revisions
Thomas Arendsen Hein <thomas@intevation.de>
parents: 16913
diff changeset
   116
41174
08dd462ea782 graft: abort if --date/user specified with --currentdate/currentuser (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 40676
diff changeset
   117
Conflicting date/user options:
08dd462ea782 graft: abort if --date/user specified with --currentdate/currentuser (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 40676
diff changeset
   118
08dd462ea782 graft: abort if --date/user specified with --currentdate/currentuser (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 40676
diff changeset
   119
  $ hg up -q 0
08dd462ea782 graft: abort if --date/user specified with --currentdate/currentuser (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 40676
diff changeset
   120
  $ hg graft -U --user foo 2
43893
2e672ccc2220 commit: use cmdutil.check_at_most_one_arg()
Martin von Zweigbergk <martinvonz@google.com>
parents: 42582
diff changeset
   121
  abort: cannot specify both --user and --currentuser
41174
08dd462ea782 graft: abort if --date/user specified with --currentdate/currentuser (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 40676
diff changeset
   122
  [255]
08dd462ea782 graft: abort if --date/user specified with --currentdate/currentuser (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 40676
diff changeset
   123
  $ hg graft -D --date '0 0' 2
43893
2e672ccc2220 commit: use cmdutil.check_at_most_one_arg()
Martin von Zweigbergk <martinvonz@google.com>
parents: 42582
diff changeset
   124
  abort: cannot specify both --date and --currentdate
41174
08dd462ea782 graft: abort if --date/user specified with --currentdate/currentuser (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 40676
diff changeset
   125
  [255]
08dd462ea782 graft: abort if --date/user specified with --currentdate/currentuser (BC)
Yuya Nishihara <yuya@tcha.org>
parents: 40676
diff changeset
   126
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   127
Can't graft with dirty wd:
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   128
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   129
  $ hg up -q 0
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   130
  $ echo foo > a
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   131
  $ hg graft 1
19804
061ce98c888d cmdutil.bailifchanged: standardize error message for dirty working dir
Siddharth Agarwal <sid0@fb.com>
parents: 19476
diff changeset
   132
  abort: uncommitted changes
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   133
  [255]
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   134
  $ hg revert a
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   135
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   136
Graft a rename:
21416
3e717c9376fc graft: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21391
diff changeset
   137
(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
   138
21416
3e717c9376fc graft: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21391
diff changeset
   139
  $ 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
   140
  A b
3e717c9376fc graft: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21391
diff changeset
   141
  R a
3e717c9376fc graft: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21391
diff changeset
   142
  $ 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
   143
  grafting 2:5c095ad7e90f "2"
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   144
  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
   145
  2
3e717c9376fc graft: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21391
diff changeset
   146
  
3e717c9376fc graft: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21391
diff changeset
   147
  
3e717c9376fc graft: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21391
diff changeset
   148
  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
   149
  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
   150
  HG: --
3e717c9376fc graft: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21391
diff changeset
   151
  HG: user: foo
3e717c9376fc graft: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21391
diff changeset
   152
  HG: branch 'default'
22897
8fe74328f700 dirstate: merge falls through to otherparent
Matt Mackall <mpm@selenic.com>
parents: 22305
diff changeset
   153
  HG: added b
21416
3e717c9376fc graft: use "getcommiteditor()" instead of explicit editor choice
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 21391
diff changeset
   154
  HG: removed a
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   155
  $ hg export tip --git
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   156
  # HG changeset patch
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   157
  # User foo
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   158
  # 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
   159
  #      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
   160
  # Node ID ef0ef43d49e79e81ddafdc7997401ba0041efc82
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   161
  # Parent  68795b066622ca79a25816a662041d8f78f3cd9e
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   162
  2
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   163
  
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   164
  diff --git a/a b/b
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   165
  rename from a
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   166
  rename to b
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   167
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   168
Look for extra:source
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   169
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   170
  $ 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
   171
  changeset:   7:ef0ef43d49e79e81ddafdc7997401ba0041efc82
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   172
  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
   173
  phase:       draft
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   174
  parent:      0:68795b066622ca79a25816a662041d8f78f3cd9e
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   175
  parent:      -1:0000000000000000000000000000000000000000
16601
0c98820be15c filectx: handle some other simple cases for finding merge ancestor
Matt Mackall <mpm@selenic.com>
parents: 16600
diff changeset
   176
  manifest:    7:e59b6b228f9cbf9903d5e9abf996e083a1f533eb
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   177
  user:        foo
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   178
  date:        Thu Jan 01 00:00:00 1970 +0000
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   179
  files+:      b
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   180
  files-:      a
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   181
  extra:       branch=default
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   182
  extra:       source=5c095ad7e90f871700f02dd1fa5012cb4498a2d4
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   183
  description:
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   184
  2
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   185
  
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   186
  
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   187
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   188
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
   189
(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
   190
16389
79fecd735d26 graft: add --dry-run support (issue3362)
Matt Mackall <mpm@selenic.com>
parents: 16094
diff changeset
   191
  $ 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
   192
  skipping ungraftable merge revision 6
23507
67045b5a903a graft: show hashes in user-facing messages
Mads Kiilerich <madski@unity3d.com>
parents: 23506
diff changeset
   193
  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
   194
  grafting 1:5d205f8b35b6 "1"
bd5dbb8a05c8 graft: show more useful status information while grafting
Mads Kiilerich <madski@unity3d.com>
parents: 23504
diff changeset
   195
  grafting 5:97f8bfe72746 "5"
bd5dbb8a05c8 graft: show more useful status information while grafting
Mads Kiilerich <madski@unity3d.com>
parents: 23504
diff changeset
   196
  grafting 4:9c233e8e184d "4"
bd5dbb8a05c8 graft: show more useful status information while grafting
Mads Kiilerich <madski@unity3d.com>
parents: 23504
diff changeset
   197
  grafting 3:4c60f11aa304 "3"
16389
79fecd735d26 graft: add --dry-run support (issue3362)
Matt Mackall <mpm@selenic.com>
parents: 16094
diff changeset
   198
27173
8a8f5d71a49a graft: improve --continue abort message
timeless <timeless@mozdev.org>
parents: 27172
diff changeset
   199
  $ HGEDITOR=cat hg graft 1 5 'merge()' 2 --debug
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   200
  skipping ungraftable merge revision 6
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   201
  scanning for duplicate grafts
23507
67045b5a903a graft: show hashes in user-facing messages
Mads Kiilerich <madski@unity3d.com>
parents: 23506
diff changeset
   202
  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
   203
  grafting 1:5d205f8b35b6 "1"
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   204
    unmatched files in local:
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   205
     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
   206
    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
   207
     src: 'a' -> dst: 'b' *
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   208
    checking for directory renames
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   209
  resolving manifests
18605
bcf29565d89f manifestmerge: pass in branchmerge and force separately
Siddharth Agarwal <sid0@fb.com>
parents: 18541
diff changeset
   210
   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
   211
   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
   212
   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
   213
  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
   214
   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
   215
  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
   216
  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
   217
  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
   218
   premerge successful
23749
a387b0390082 localrepo: show headline notes in commitctx before showing filenames
Mads Kiilerich <madski@unity3d.com>
parents: 23514
diff changeset
   219
  committing files:
16601
0c98820be15c filectx: handle some other simple cases for finding merge ancestor
Matt Mackall <mpm@selenic.com>
parents: 16600
diff changeset
   220
  b
23749
a387b0390082 localrepo: show headline notes in commitctx before showing filenames
Mads Kiilerich <madski@unity3d.com>
parents: 23514
diff changeset
   221
  committing manifest
a387b0390082 localrepo: show headline notes in commitctx before showing filenames
Mads Kiilerich <madski@unity3d.com>
parents: 23514
diff changeset
   222
  committing changelog
32267
c2380b448265 caches: move the 'updating the branch cache' message in 'updatecaches'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 32245
diff changeset
   223
  updating the branch cache
23505
bd5dbb8a05c8 graft: show more useful status information while grafting
Mads Kiilerich <madski@unity3d.com>
parents: 23504
diff changeset
   224
  grafting 5:97f8bfe72746 "5"
42222
57203e0210f8 copies: calculate mergecopies() based on pathcopies()
Martin von Zweigbergk <martinvonz@google.com>
parents: 42169
diff changeset
   225
    all copies found (* = to merge, ! = divergent, % = renamed and deleted):
57203e0210f8 copies: calculate mergecopies() based on pathcopies()
Martin von Zweigbergk <martinvonz@google.com>
parents: 42169
diff changeset
   226
     src: 'c' -> dst: 'b' 
57203e0210f8 copies: calculate mergecopies() based on pathcopies()
Martin von Zweigbergk <martinvonz@google.com>
parents: 42169
diff changeset
   227
    checking for directory renames
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   228
  resolving manifests
18605
bcf29565d89f manifestmerge: pass in branchmerge and force separately
Siddharth Agarwal <sid0@fb.com>
parents: 18541
diff changeset
   229
   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
   230
   ancestor: 4c60f11aa304, local: 6b9e5368ca4e+, remote: 97f8bfe72746
21389
e741972017d9 merge: change priority / ordering of merge actions
Mads Kiilerich <madski@unity3d.com>
parents: 21267
diff changeset
   231
   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
   232
  getting e
23749
a387b0390082 localrepo: show headline notes in commitctx before showing filenames
Mads Kiilerich <madski@unity3d.com>
parents: 23514
diff changeset
   233
  committing files:
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   234
  e
23749
a387b0390082 localrepo: show headline notes in commitctx before showing filenames
Mads Kiilerich <madski@unity3d.com>
parents: 23514
diff changeset
   235
  committing manifest
a387b0390082 localrepo: show headline notes in commitctx before showing filenames
Mads Kiilerich <madski@unity3d.com>
parents: 23514
diff changeset
   236
  committing changelog
32267
c2380b448265 caches: move the 'updating the branch cache' message in 'updatecaches'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 32245
diff changeset
   237
  updating the branch cache
27173
8a8f5d71a49a graft: improve --continue abort message
timeless <timeless@mozdev.org>
parents: 27172
diff changeset
   238
  $ HGEDITOR=cat hg graft 4 3 --log --debug
8a8f5d71a49a graft: improve --continue abort message
timeless <timeless@mozdev.org>
parents: 27172
diff changeset
   239
  scanning for duplicate grafts
23505
bd5dbb8a05c8 graft: show more useful status information while grafting
Mads Kiilerich <madski@unity3d.com>
parents: 23504
diff changeset
   240
  grafting 4:9c233e8e184d "4"
42222
57203e0210f8 copies: calculate mergecopies() based on pathcopies()
Martin von Zweigbergk <martinvonz@google.com>
parents: 42169
diff changeset
   241
    all copies found (* = to merge, ! = divergent, % = renamed and deleted):
57203e0210f8 copies: calculate mergecopies() based on pathcopies()
Martin von Zweigbergk <martinvonz@google.com>
parents: 42169
diff changeset
   242
     src: 'c' -> dst: 'b' 
57203e0210f8 copies: calculate mergecopies() based on pathcopies()
Martin von Zweigbergk <martinvonz@google.com>
parents: 42169
diff changeset
   243
    checking for directory renames
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   244
  resolving manifests
18605
bcf29565d89f manifestmerge: pass in branchmerge and force separately
Siddharth Agarwal <sid0@fb.com>
parents: 18541
diff changeset
   245
   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
   246
   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
   247
   preserving e for resolve of e
21389
e741972017d9 merge: change priority / ordering of merge actions
Mads Kiilerich <madski@unity3d.com>
parents: 21267
diff changeset
   248
   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
   249
  getting d
26618
8e6d5b7317e6 merge.mergestate: perform all premerges before any merges (BC)
Siddharth Agarwal <sid0@fb.com>
parents: 26614
diff changeset
   250
   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
   251
  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
   252
  merging e
28011
8abd9f785030 merge: add file ancestor linknode to mergestate
Durham Goode <durham@fb.com>
parents: 27899
diff changeset
   253
  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
   254
   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
   255
  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
   256
  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
   257
  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
   258
  abort: unresolved conflicts, can't continue
38238
2b8c8b8d1a06 graft: reuse the --log value passed initially in `hg graft --continue` (BC)
Pulkit Goyal <7895pulkit@gmail.com>
parents: 38237
diff changeset
   259
  (use 'hg resolve' and 'hg graft --continue')
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   260
  [255]
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   261
27172
4d61c847e06c summary: mention graft
timeless <timeless@mozdev.org>
parents: 27161
diff changeset
   262
Summary should mention graft:
4d61c847e06c summary: mention graft
timeless <timeless@mozdev.org>
parents: 27161
diff changeset
   263
4d61c847e06c summary: mention graft
timeless <timeless@mozdev.org>
parents: 27161
diff changeset
   264
  $ hg summary |grep graft
4d61c847e06c summary: mention graft
timeless <timeless@mozdev.org>
parents: 27161
diff changeset
   265
  commit: 2 modified, 2 unknown, 1 unresolved (graft in progress)
4d61c847e06c summary: mention graft
timeless <timeless@mozdev.org>
parents: 27161
diff changeset
   266
33771
96f43981c1c4 morestatus: move fb extension to core by plugging to `hg status --verbose`
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32267
diff changeset
   267
Using status to get more context
96f43981c1c4 morestatus: move fb extension to core by plugging to `hg status --verbose`
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32267
diff changeset
   268
96f43981c1c4 morestatus: move fb extension to core by plugging to `hg status --verbose`
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32267
diff changeset
   269
  $ hg status --verbose
96f43981c1c4 morestatus: move fb extension to core by plugging to `hg status --verbose`
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32267
diff changeset
   270
  M d
96f43981c1c4 morestatus: move fb extension to core by plugging to `hg status --verbose`
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32267
diff changeset
   271
  M e
96f43981c1c4 morestatus: move fb extension to core by plugging to `hg status --verbose`
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32267
diff changeset
   272
  ? a.orig
96f43981c1c4 morestatus: move fb extension to core by plugging to `hg status --verbose`
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32267
diff changeset
   273
  ? e.orig
96f43981c1c4 morestatus: move fb extension to core by plugging to `hg status --verbose`
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32267
diff changeset
   274
  # The repository is in an unfinished *graft* state.
96f43981c1c4 morestatus: move fb extension to core by plugging to `hg status --verbose`
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32267
diff changeset
   275
  
96f43981c1c4 morestatus: move fb extension to core by plugging to `hg status --verbose`
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32267
diff changeset
   276
  # Unresolved merge conflicts:
96f43981c1c4 morestatus: move fb extension to core by plugging to `hg status --verbose`
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32267
diff changeset
   277
  # 
96f43981c1c4 morestatus: move fb extension to core by plugging to `hg status --verbose`
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32267
diff changeset
   278
  #     e
96f43981c1c4 morestatus: move fb extension to core by plugging to `hg status --verbose`
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32267
diff changeset
   279
  # 
96f43981c1c4 morestatus: move fb extension to core by plugging to `hg status --verbose`
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32267
diff changeset
   280
  # To mark files as resolved:  hg resolve --mark FILE
96f43981c1c4 morestatus: move fb extension to core by plugging to `hg status --verbose`
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32267
diff changeset
   281
  
38341
50f5fc232c16 morestatus: remove some extra spaces
Pulkit Goyal <7895pulkit@gmail.com>
parents: 38311
diff changeset
   282
  # To continue:    hg graft --continue
38966
5b04b6204931 status: advertise --abort instead of 'update -C .' to abort graft
Pulkit Goyal <pulkit@yandex-team.ru>
parents: 38473
diff changeset
   283
  # To abort:       hg graft --abort
42532
12243f15d53e statecheck: added support for STATES
Taapas Agrawal <taapas2897@gmail.com>
parents: 42286
diff changeset
   284
  # To stop:        hg graft --stop
33771
96f43981c1c4 morestatus: move fb extension to core by plugging to `hg status --verbose`
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32267
diff changeset
   285
  
96f43981c1c4 morestatus: move fb extension to core by plugging to `hg status --verbose`
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32267
diff changeset
   286
19253
e078ea9b4ce4 graft: refuse to commit an interrupted graft (issue3667)
Simon King <simon@simonking.org.uk>
parents: 18648
diff changeset
   287
Commit while interrupted should fail:
e078ea9b4ce4 graft: refuse to commit an interrupted graft (issue3667)
Simon King <simon@simonking.org.uk>
parents: 18648
diff changeset
   288
e078ea9b4ce4 graft: refuse to commit an interrupted graft (issue3667)
Simon King <simon@simonking.org.uk>
parents: 18648
diff changeset
   289
  $ hg ci -m 'commit interrupted graft'
19476
4fed15d4c5aa commands: add checks for unfinished operations (issue3955)
Matt Mackall <mpm@selenic.com>
parents: 19332
diff changeset
   290
  abort: graft in progress
38311
47f5454a30ed cmdutil: say that `graft --stop` stops the graft instead of aborting
Pulkit Goyal <7895pulkit@gmail.com>
parents: 38280
diff changeset
   291
  (use 'hg graft --continue' or 'hg graft --stop' to stop)
19253
e078ea9b4ce4 graft: refuse to commit an interrupted graft (issue3667)
Simon King <simon@simonking.org.uk>
parents: 18648
diff changeset
   292
  [255]
e078ea9b4ce4 graft: refuse to commit an interrupted graft (issue3667)
Simon King <simon@simonking.org.uk>
parents: 18648
diff changeset
   293
19332
0af993732f66 update: remove .hg/graftstate on clean (issue3970)
Siddharth Agarwal <sid0@fb.com>
parents: 19253
diff changeset
   294
Abort the graft and try committing:
0af993732f66 update: remove .hg/graftstate on clean (issue3970)
Siddharth Agarwal <sid0@fb.com>
parents: 19253
diff changeset
   295
0af993732f66 update: remove .hg/graftstate on clean (issue3970)
Siddharth Agarwal <sid0@fb.com>
parents: 19253
diff changeset
   296
  $ hg up -C .
0af993732f66 update: remove .hg/graftstate on clean (issue3970)
Siddharth Agarwal <sid0@fb.com>
parents: 19253
diff changeset
   297
  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
   298
  $ echo c >> e
0af993732f66 update: remove .hg/graftstate on clean (issue3970)
Siddharth Agarwal <sid0@fb.com>
parents: 19253
diff changeset
   299
  $ hg ci -mtest
0af993732f66 update: remove .hg/graftstate on clean (issue3970)
Siddharth Agarwal <sid0@fb.com>
parents: 19253
diff changeset
   300
23514
3575f42e1b7b test-graft: use strip extension instead of mq extension
Augie Fackler <raf@durin42.com>
parents: 23508
diff changeset
   301
  $ hg strip . --config extensions.strip=
19332
0af993732f66 update: remove .hg/graftstate on clean (issue3970)
Siddharth Agarwal <sid0@fb.com>
parents: 19253
diff changeset
   302
  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
   303
  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
   304
0af993732f66 update: remove .hg/graftstate on clean (issue3970)
Siddharth Agarwal <sid0@fb.com>
parents: 19253
diff changeset
   305
Graft again:
0af993732f66 update: remove .hg/graftstate on clean (issue3970)
Siddharth Agarwal <sid0@fb.com>
parents: 19253
diff changeset
   306
0af993732f66 update: remove .hg/graftstate on clean (issue3970)
Siddharth Agarwal <sid0@fb.com>
parents: 19253
diff changeset
   307
  $ 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
   308
  skipping ungraftable merge revision 6
23507
67045b5a903a graft: show hashes in user-facing messages
Mads Kiilerich <madski@unity3d.com>
parents: 23506
diff changeset
   309
  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
   310
  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
   311
  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
   312
  grafting 4:9c233e8e184d "4"
19332
0af993732f66 update: remove .hg/graftstate on clean (issue3970)
Siddharth Agarwal <sid0@fb.com>
parents: 19253
diff changeset
   313
  merging e
26614
ef1eb6df7071 simplemerge: move conflict warning message to filemerge
Siddharth Agarwal <sid0@fb.com>
parents: 26611
diff changeset
   314
  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
   315
  abort: unresolved conflicts, can't continue
28963
fc1d75e7a98d graft: use single quotes around command hint
timeless <timeless@mozdev.org>
parents: 28634
diff changeset
   316
  (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
   317
  [255]
0af993732f66 update: remove .hg/graftstate on clean (issue3970)
Siddharth Agarwal <sid0@fb.com>
parents: 19253
diff changeset
   318
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   319
Continue without resolve should fail:
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   320
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   321
  $ hg graft -c
23505
bd5dbb8a05c8 graft: show more useful status information while grafting
Mads Kiilerich <madski@unity3d.com>
parents: 23504
diff changeset
   322
  grafting 4:9c233e8e184d "4"
29975
c15f06109b7a localrepo: use single quotes in use warning
timeless <timeless@mozdev.org>
parents: 28963
diff changeset
   323
  abort: unresolved merge conflicts (see 'hg help resolve')
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   324
  [255]
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   325
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   326
Fix up:
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   327
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   328
  $ echo b > e
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   329
  $ 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
   330
  (no more unresolved files)
27625
cdb9493a7e2f graft: hook afterresolvedstates
timeless <timeless@mozdev.org>
parents: 27173
diff changeset
   331
  continue: hg graft --continue
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   332
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   333
Continue with a revision should fail:
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   334
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   335
  $ hg graft -c 6
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   336
  abort: can't specify --continue and revisions
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   337
  [255]
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   338
16992
55e7f352b1d3 graft: allow -r to specify revisions
Thomas Arendsen Hein <thomas@intevation.de>
parents: 16913
diff changeset
   339
  $ hg graft -c -r 6
55e7f352b1d3 graft: allow -r to specify revisions
Thomas Arendsen Hein <thomas@intevation.de>
parents: 16913
diff changeset
   340
  abort: can't specify --continue and revisions
55e7f352b1d3 graft: allow -r to specify revisions
Thomas Arendsen Hein <thomas@intevation.de>
parents: 16913
diff changeset
   341
  [255]
55e7f352b1d3 graft: allow -r to specify revisions
Thomas Arendsen Hein <thomas@intevation.de>
parents: 16913
diff changeset
   342
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   343
Continue for real, clobber usernames
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   344
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   345
  $ hg graft -c -U
23505
bd5dbb8a05c8 graft: show more useful status information while grafting
Mads Kiilerich <madski@unity3d.com>
parents: 23504
diff changeset
   346
  grafting 4:9c233e8e184d "4"
bd5dbb8a05c8 graft: show more useful status information while grafting
Mads Kiilerich <madski@unity3d.com>
parents: 23504
diff changeset
   347
  grafting 3:4c60f11aa304 "3"
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   348
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   349
Compare with original:
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   350
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   351
  $ hg diff -r 6
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   352
  $ hg status --rev 0:. -C
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   353
  M d
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   354
  M e
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   355
  A b
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   356
    a
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   357
  A c
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   358
    a
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   359
  R a
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   360
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   361
View graph:
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   362
20117
aa9385f983fa tests: don't load unnecessary graphlog extension
Martin Geisler <martin@geisler.net>
parents: 19893
diff changeset
   363
  $ 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
   364
  @  test@11.draft: 3
0c98820be15c filectx: handle some other simple cases for finding merge ancestor
Matt Mackall <mpm@selenic.com>
parents: 16600
diff changeset
   365
  |
0c98820be15c filectx: handle some other simple cases for finding merge ancestor
Matt Mackall <mpm@selenic.com>
parents: 16600
diff changeset
   366
  o  test@10.draft: 4
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   367
  |
16601
0c98820be15c filectx: handle some other simple cases for finding merge ancestor
Matt Mackall <mpm@selenic.com>
parents: 16600
diff changeset
   368
  o  test@9.draft: 5
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   369
  |
16601
0c98820be15c filectx: handle some other simple cases for finding merge ancestor
Matt Mackall <mpm@selenic.com>
parents: 16600
diff changeset
   370
  o  bar@8.draft: 1
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   371
  |
15918
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
   372
  o  foo@7.draft: 2
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   373
  |
15918
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
   374
  | o    test@6.secret: 6
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   375
  | |\
15918
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
   376
  | | o  test@5.draft: 5
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   377
  | | |
15918
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
   378
  | o |  test@4.draft: 4
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   379
  | |/
15918
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
   380
  | o  baz@3.public: 3
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   381
  | |
15918
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
   382
  | o  test@2.public: 2
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   383
  | |
15918
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
   384
  | o  bar@1.public: 1
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   385
  |/
15918
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
   386
  o  test@0.public: 0
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   387
  
15506
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   388
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
   389
  $ hg up -q 0
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   390
  $ echo 'g'>g
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   391
  $ hg add g
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   392
  $ hg ci -m 7
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   393
  created new head
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   394
  $ hg graft 7
23505
bd5dbb8a05c8 graft: show more useful status information while grafting
Mads Kiilerich <madski@unity3d.com>
parents: 23504
diff changeset
   395
  grafting 7:ef0ef43d49e7 "2"
15506
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   396
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   397
  $ 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
   398
  7:ef0ef43d49e79e81ddafdc7997401ba0041efc82
15506
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   399
  $ 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
   400
  2:5c095ad7e90f871700f02dd1fa5012cb4498a2d4
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   401
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   402
  $ hg log --debug -r tip
24644
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   403
  changeset:   13:7a4785234d87ec1aa420ed6b11afe40fa73e12a9
15506
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   404
  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
   405
  phase:       draft
16601
0c98820be15c filectx: handle some other simple cases for finding merge ancestor
Matt Mackall <mpm@selenic.com>
parents: 16600
diff changeset
   406
  parent:      12:b592ea63bb0c19a6c5c44685ee29a2284f9f1b8f
15506
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   407
  parent:      -1:0000000000000000000000000000000000000000
16601
0c98820be15c filectx: handle some other simple cases for finding merge ancestor
Matt Mackall <mpm@selenic.com>
parents: 16600
diff changeset
   408
  manifest:    13:dc313617b8c32457c0d589e0dbbedfe71f3cd637
15506
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   409
  user:        foo
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   410
  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
   411
  files+:      b
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   412
  files-:      a
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   413
  extra:       branch=default
24644
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   414
  extra:       intermediate-source=ef0ef43d49e79e81ddafdc7997401ba0041efc82
15506
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   415
  extra:       source=5c095ad7e90f871700f02dd1fa5012cb4498a2d4
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   416
  description:
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   417
  2
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   418
  
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   419
  
15508
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
   420
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
   421
  $ hg up -q 6
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
   422
  $ hg graft 7
23507
67045b5a903a graft: show hashes in user-facing messages
Mads Kiilerich <madski@unity3d.com>
parents: 23506
diff changeset
   423
  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
   424
  [255]
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
   425
28052
b59ef0c21405 tests: use portable diff script via extdiff extension
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 28034
diff changeset
   426
  $ 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
   427
  --- */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
   428
  +++ */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
   429
  @@ -1,18 +1,18 @@
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   430
   # HG changeset patch
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   431
  -# User test
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   432
  +# User foo
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   433
   # Date 0 0
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   434
   #      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
   435
  -# Node ID 5c095ad7e90f871700f02dd1fa5012cb4498a2d4
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   436
  -# Parent  5d205f8b35b66bc36375c9534ffd3237730e8f04
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   437
  +# Node ID 7a4785234d87ec1aa420ed6b11afe40fa73e12a9
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   438
  +# Parent  b592ea63bb0c19a6c5c44685ee29a2284f9f1b8f
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   439
   2
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   440
   
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   441
  -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
   442
  +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
   443
   --- 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
   444
   +++ /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
   445
   @@ -1,1 +0,0 @@
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   446
  --b
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   447
  -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
   448
  +-a
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   449
  +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
   450
   --- /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
   451
   +++ 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
   452
   @@ -0,0 +1,1 @@
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   453
  -+b
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   454
  ++a
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   455
  [1]
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   456
28052
b59ef0c21405 tests: use portable diff script via extdiff extension
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 28034
diff changeset
   457
  $ 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
   458
  --- */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
   459
  +++ */hg-7a4785234d87.patch	* (glob)
26229
d1530c6e8613 extdiff: enable -I/-X with --patch
Matt Harbison <matt_harbison@yahoo.com>
parents: 26228
diff changeset
   460
  @@ -1,8 +1,8 @@
d1530c6e8613 extdiff: enable -I/-X with --patch
Matt Harbison <matt_harbison@yahoo.com>
parents: 26228
diff changeset
   461
   # HG changeset patch
d1530c6e8613 extdiff: enable -I/-X with --patch
Matt Harbison <matt_harbison@yahoo.com>
parents: 26228
diff changeset
   462
  -# User test
d1530c6e8613 extdiff: enable -I/-X with --patch
Matt Harbison <matt_harbison@yahoo.com>
parents: 26228
diff changeset
   463
  +# User foo
d1530c6e8613 extdiff: enable -I/-X with --patch
Matt Harbison <matt_harbison@yahoo.com>
parents: 26228
diff changeset
   464
   # Date 0 0
d1530c6e8613 extdiff: enable -I/-X with --patch
Matt Harbison <matt_harbison@yahoo.com>
parents: 26228
diff changeset
   465
   #      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
   466
  -# Node ID 5c095ad7e90f871700f02dd1fa5012cb4498a2d4
d1530c6e8613 extdiff: enable -I/-X with --patch
Matt Harbison <matt_harbison@yahoo.com>
parents: 26228
diff changeset
   467
  -# Parent  5d205f8b35b66bc36375c9534ffd3237730e8f04
d1530c6e8613 extdiff: enable -I/-X with --patch
Matt Harbison <matt_harbison@yahoo.com>
parents: 26228
diff changeset
   468
  +# Node ID 7a4785234d87ec1aa420ed6b11afe40fa73e12a9
d1530c6e8613 extdiff: enable -I/-X with --patch
Matt Harbison <matt_harbison@yahoo.com>
parents: 26228
diff changeset
   469
  +# Parent  b592ea63bb0c19a6c5c44685ee29a2284f9f1b8f
d1530c6e8613 extdiff: enable -I/-X with --patch
Matt Harbison <matt_harbison@yahoo.com>
parents: 26228
diff changeset
   470
   2
d1530c6e8613 extdiff: enable -I/-X with --patch
Matt Harbison <matt_harbison@yahoo.com>
parents: 26228
diff changeset
   471
   
d1530c6e8613 extdiff: enable -I/-X with --patch
Matt Harbison <matt_harbison@yahoo.com>
parents: 26228
diff changeset
   472
  [1]
26228
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   473
15508
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
   474
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
   475
  $ 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
   476
  $ hg graft 2
24644
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   477
  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
   478
  [255]
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
   479
  $ hg graft 7
24644
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   480
  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
   481
  [255]
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
   482
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
   483
  $ hg up -q 7
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
   484
  $ hg graft 2
23507
67045b5a903a graft: show hashes in user-facing messages
Mads Kiilerich <madski@unity3d.com>
parents: 23506
diff changeset
   485
  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
   486
  [255]
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
   487
  $ hg graft tip
24644
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   488
  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
   489
  [255]
17045
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   490
16660
2a71cc53f244 graft: implement --log (issue3438)
Levi Bard <levi@unity3d.com>
parents: 16601
diff changeset
   491
Graft with --log
2a71cc53f244 graft: implement --log (issue3438)
Levi Bard <levi@unity3d.com>
parents: 16601
diff changeset
   492
2a71cc53f244 graft: implement --log (issue3438)
Levi Bard <levi@unity3d.com>
parents: 16601
diff changeset
   493
  $ hg up -Cq 1
2a71cc53f244 graft: implement --log (issue3438)
Levi Bard <levi@unity3d.com>
parents: 16601
diff changeset
   494
  $ 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
   495
  grafting 3:4c60f11aa304 "3"
30188
8a864844d5a0 checkcopies: add a sanity check against false-positive copies
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 29975
diff changeset
   496
  $ 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
   497
  14:0c921c65ef1e 1:5d205f8b35b6  3
16660
2a71cc53f244 graft: implement --log (issue3438)
Levi Bard <levi@unity3d.com>
parents: 16601
diff changeset
   498
  (grafted from 4c60f11aa304a54ae1c199feb94e7fc771e51ed8)
16913
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 16795
diff changeset
   499
17045
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   500
Resolve conflicted graft
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   501
  $ 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
   502
  $ echo b > a
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   503
  $ 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
   504
  created new head
23463
bb0143e12f35 graft: use a real conflict for the tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 23167
diff changeset
   505
  $ 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
   506
  $ 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
   507
  $ 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
   508
  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
   509
  abort: unresolved conflicts, can't continue
28963
fc1d75e7a98d graft: use single quotes around command hint
timeless <timeless@mozdev.org>
parents: 28634
diff changeset
   510
  (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
   511
  [255]
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   512
  $ hg resolve --all
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   513
  merging a
26614
ef1eb6df7071 simplemerge: move conflict warning message to filemerge
Siddharth Agarwal <sid0@fb.com>
parents: 26611
diff changeset
   514
  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
   515
  [1]
bb0143e12f35 graft: use a real conflict for the tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 23167
diff changeset
   516
  $ cat a
bb0143e12f35 graft: use a real conflict for the tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 23167
diff changeset
   517
  <<<<<<< local: aaa4406d4f0a - test: 9
bb0143e12f35 graft: use a real conflict for the tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 23167
diff changeset
   518
  c
bb0143e12f35 graft: use a real conflict for the tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 23167
diff changeset
   519
  =======
bb0143e12f35 graft: use a real conflict for the tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 23167
diff changeset
   520
  b
30460
ce3a133f71b3 conflicts: make spacing consistent in conflict markers
Kostia Balytskyi <ikostia@fb.com>
parents: 30229
diff changeset
   521
  >>>>>>> graft: 5d205f8b35b6 - bar: 1
23463
bb0143e12f35 graft: use a real conflict for the tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 23167
diff changeset
   522
  $ echo b > a
bb0143e12f35 graft: use a real conflict for the tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 23167
diff changeset
   523
  $ 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
   524
  (no more unresolved files)
27625
cdb9493a7e2f graft: hook afterresolvedstates
timeless <timeless@mozdev.org>
parents: 27173
diff changeset
   525
  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
   526
  $ hg graft -c
23505
bd5dbb8a05c8 graft: show more useful status information while grafting
Mads Kiilerich <madski@unity3d.com>
parents: 23504
diff changeset
   527
  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
   528
  $ 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
   529
  # HG changeset patch
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   530
  # User bar
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   531
  # 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
   532
  #      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
   533
  # Node ID f67661df0c4804d301f064f332b57e7d5ddaf2be
bb0143e12f35 graft: use a real conflict for the tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 23167
diff changeset
   534
  # Parent  aaa4406d4f0ae9befd6e58c82ec63706460cbca6
17045
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   535
  1
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   536
  
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   537
  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
   538
  --- a/a
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   539
  +++ b/a
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   540
  @@ -1,1 +1,1 @@
23463
bb0143e12f35 graft: use a real conflict for the tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 23167
diff changeset
   541
  -c
17045
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   542
  +b
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   543
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   544
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
   545
  $ echo c > a
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   546
  $ 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
   547
  $ 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
   548
  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
   549
  abort: unresolved conflicts, can't continue
28963
fc1d75e7a98d graft: use single quotes around command hint
timeless <timeless@mozdev.org>
parents: 28634
diff changeset
   550
  (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
   551
  [255]
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   552
  $ hg resolve --all
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   553
  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
   554
  (no more unresolved files)
27625
cdb9493a7e2f graft: hook afterresolvedstates
timeless <timeless@mozdev.org>
parents: 27173
diff changeset
   555
  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
   556
  $ hg graft -c
23505
bd5dbb8a05c8 graft: show more useful status information while grafting
Mads Kiilerich <madski@unity3d.com>
parents: 23504
diff changeset
   557
  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
   558
  $ 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
   559
  # HG changeset patch
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   560
  # User test
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   561
  # 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
   562
  #      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
   563
  # Node ID 9627f653b421c61fc1ea4c4e366745070fa3d2bc
bb0143e12f35 graft: use a real conflict for the tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 23167
diff changeset
   564
  # Parent  ee295f490a40b97f3d18dd4c4f1c8936c233b612
17045
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   565
  2
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   566
  
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   567
  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
   568
  rename from a
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   569
  rename to b
17185
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   570
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   571
Test simple origin(), with and without args
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   572
  $ hg log -r 'origin()'
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   573
  changeset:   1:5d205f8b35b6
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   574
  user:        bar
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   575
  date:        Thu Jan 01 00:00:00 1970 +0000
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   576
  summary:     1
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   577
  
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   578
  changeset:   2:5c095ad7e90f
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   579
  user:        test
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   580
  date:        Thu Jan 01 00:00:00 1970 +0000
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   581
  summary:     2
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   582
  
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   583
  changeset:   3:4c60f11aa304
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   584
  user:        baz
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   585
  date:        Thu Jan 01 00:00:00 1970 +0000
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   586
  summary:     3
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   587
  
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   588
  changeset:   4:9c233e8e184d
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   589
  user:        test
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   590
  date:        Thu Jan 01 00:00:00 1970 +0000
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   591
  summary:     4
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   592
  
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   593
  changeset:   5:97f8bfe72746
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   594
  branch:      stable
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   595
  parent:      3:4c60f11aa304
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   596
  user:        test
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   597
  date:        Thu Jan 01 00:00:00 1970 +0000
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   598
  summary:     5
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   599
  
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   600
  $ hg log -r 'origin(7)'
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   601
  changeset:   2:5c095ad7e90f
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   602
  user:        test
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   603
  date:        Thu Jan 01 00:00:00 1970 +0000
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   604
  summary:     2
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   605
  
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   606
Now transplant a graft to test following through copies
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   607
  $ hg up -q 0
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   608
  $ hg branch -q dev
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   609
  $ hg ci -qm "dev branch"
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   610
  $ hg --config extensions.transplant= transplant -q 7
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   611
  $ hg log -r 'origin(.)'
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   612
  changeset:   2:5c095ad7e90f
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   613
  user:        test
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   614
  date:        Thu Jan 01 00:00:00 1970 +0000
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   615
  summary:     2
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   616
  
21765
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   617
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
   618
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
   619
tests.
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   620
  $ 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
   621
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   622
The graft case
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   623
  $ 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
   624
  7: 7ae846e9111fc8f57745634250c7b9ac0a60689b
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   625
  branch=default
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   626
  convert_revision=ef0ef43d49e79e81ddafdc7997401ba0041efc82
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   627
  source=e0213322b2c1a5d5d236c74e79666441bee67a7d
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   628
  $ 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
   629
  changeset:   2:e0213322b2c1
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   630
  user:        test
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   631
  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
   632
  summary:     2
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   633
  
25589
273d94255e1e convert: update 'intermediate-source' in the destination's extras dictionary
Matt Harbison <matt_harbison@yahoo.com>
parents: 25125
diff changeset
   634
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
   635
'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
   636
  $ 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
   637
   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
   638
   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
   639
   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
   640
   Extra: source=e0213322b2c1a5d5d236c74e79666441bee67a7d
a3c2d9211294 templater: don't overwrite the keyword mapping in runsymbol() (issue4362)
Matt Harbison <matt_harbison@yahoo.com>
parents: 22897
diff changeset
   641
21765
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   642
The transplant case
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   643
  $ 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
   644
  21: fbb6c5cc81002f2b4b49c9d731404688bcae5ade
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   645
  branch=dev
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   646
  convert_revision=7e61b508e709a11d28194a5359bc3532d910af21
31452
52dabcc49968 templatekw: make join() escape values of extras (BC) (issue5504)
Yuya Nishihara <yuya@tcha.org>
parents: 30581
diff changeset
   647
  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
   648
  $ 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
   649
  changeset:   2:e0213322b2c1
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   650
  user:        test
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   651
  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
   652
  summary:     2
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   653
  
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   654
17186
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   655
Test simple destination
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   656
  $ hg log -r 'destination()'
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   657
  changeset:   7:ef0ef43d49e7
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   658
  parent:      0:68795b066622
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   659
  user:        foo
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   660
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   661
  summary:     2
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   662
  
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   663
  changeset:   8:6b9e5368ca4e
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   664
  user:        bar
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   665
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   666
  summary:     1
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   667
  
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   668
  changeset:   9:1905859650ec
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   669
  user:        test
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:     5
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
  changeset:   10:52dc0b4c6907
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   674
  user:        test
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   675
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   676
  summary:     4
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   677
  
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   678
  changeset:   11:882b35362a6b
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   679
  user:        test
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   680
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   681
  summary:     3
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   682
  
24644
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   683
  changeset:   13:7a4785234d87
17186
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   684
  user:        foo
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   685
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   686
  summary:     2
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   687
  
30188
8a864844d5a0 checkcopies: add a sanity check against false-positive copies
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 29975
diff changeset
   688
  changeset:   14:0c921c65ef1e
17186
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   689
  parent:      1:5d205f8b35b6
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   690
  user:        foo
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   691
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   692
  summary:     3
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   693
  
23463
bb0143e12f35 graft: use a real conflict for the tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 23167
diff changeset
   694
  changeset:   17:f67661df0c48
17186
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   695
  user:        bar
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:     1
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   698
  
23463
bb0143e12f35 graft: use a real conflict for the tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 23167
diff changeset
   699
  changeset:   19:9627f653b421
17186
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   700
  user:        test
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
  
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   704
  changeset:   21:7e61b508e709
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   705
  branch:      dev
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   706
  tag:         tip
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   707
  user:        foo
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   708
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   709
  summary:     2
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   710
  
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   711
  $ hg log -r 'destination(2)'
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   712
  changeset:   7:ef0ef43d49e7
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   713
  parent:      0:68795b066622
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   714
  user:        foo
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   715
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   716
  summary:     2
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   717
  
24644
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   718
  changeset:   13:7a4785234d87
17186
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   719
  user:        foo
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   720
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   721
  summary:     2
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   722
  
23463
bb0143e12f35 graft: use a real conflict for the tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 23167
diff changeset
   723
  changeset:   19:9627f653b421
17186
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   724
  user:        test
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   725
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   726
  summary:     2
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   727
  
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   728
  changeset:   21:7e61b508e709
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   729
  branch:      dev
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   730
  tag:         tip
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   731
  user:        foo
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   732
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   733
  summary:     2
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   734
  
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   735
Transplants of grafts can find a destination...
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   736
  $ hg log -r 'destination(7)'
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   737
  changeset:   21:7e61b508e709
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   738
  branch:      dev
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   739
  tag:         tip
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   740
  user:        foo
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   741
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   742
  summary:     2
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   743
  
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   744
... grafts of grafts unfortunately can't
39111
46da52f4b820 commit: try hard to reuse p1 manifest if nothing changed
Yuya Nishihara <yuya@tcha.org>
parents: 38966
diff changeset
   745
  $ hg graft -q 13 --debug
46da52f4b820 commit: try hard to reuse p1 manifest if nothing changed
Yuya Nishihara <yuya@tcha.org>
parents: 38966
diff changeset
   746
  scanning for duplicate grafts
46da52f4b820 commit: try hard to reuse p1 manifest if nothing changed
Yuya Nishihara <yuya@tcha.org>
parents: 38966
diff changeset
   747
  grafting 13:7a4785234d87 "2"
42164
96bd75e67a94 copies: fix up "fullcopy" with missing entries from "copy"
Martin von Zweigbergk <martinvonz@google.com>
parents: 42161
diff changeset
   748
    all copies found (* = to merge, ! = divergent, % = renamed and deleted):
96bd75e67a94 copies: fix up "fullcopy" with missing entries from "copy"
Martin von Zweigbergk <martinvonz@google.com>
parents: 42161
diff changeset
   749
     src: 'a' -> dst: 'b' *
96bd75e67a94 copies: fix up "fullcopy" with missing entries from "copy"
Martin von Zweigbergk <martinvonz@google.com>
parents: 42161
diff changeset
   750
    checking for directory renames
39111
46da52f4b820 commit: try hard to reuse p1 manifest if nothing changed
Yuya Nishihara <yuya@tcha.org>
parents: 38966
diff changeset
   751
  resolving manifests
46da52f4b820 commit: try hard to reuse p1 manifest if nothing changed
Yuya Nishihara <yuya@tcha.org>
parents: 38966
diff changeset
   752
   branchmerge: True, force: True, partial: False
46da52f4b820 commit: try hard to reuse p1 manifest if nothing changed
Yuya Nishihara <yuya@tcha.org>
parents: 38966
diff changeset
   753
   ancestor: b592ea63bb0c, local: 7e61b508e709+, remote: 7a4785234d87
39187
2f89a7defe62 test-graft: add a missing output line for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 39111
diff changeset
   754
  starting 4 threads for background file closing (?)
44091
3df0bd706c40 graftcopies: use _filter() for filtering out invalid copies
Martin von Zweigbergk <martinvonz@google.com>
parents: 44044
diff changeset
   755
  note: graft of 13:7a4785234d87 created no changes to commit
17186
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   756
  $ hg log -r 'destination(13)'
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   757
All copies of a cset
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   758
  $ hg log -r 'origin(13) or destination(origin(13))'
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   759
  changeset:   2:5c095ad7e90f
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   760
  user:        test
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   761
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   762
  summary:     2
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   763
  
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   764
  changeset:   7:ef0ef43d49e7
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   765
  parent:      0:68795b066622
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   766
  user:        foo
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   767
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   768
  summary:     2
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   769
  
24644
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   770
  changeset:   13:7a4785234d87
17186
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   771
  user:        foo
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   772
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   773
  summary:     2
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   774
  
23463
bb0143e12f35 graft: use a real conflict for the tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 23167
diff changeset
   775
  changeset:   19:9627f653b421
17186
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   776
  user:        test
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   777
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   778
  summary:     2
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   779
  
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   780
  changeset:   21:7e61b508e709
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   781
  branch:      dev
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   782
  tag:         tip
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   783
  user:        foo
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   784
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   785
  summary:     2
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   786
  
21200
a1381eea7c7d graft: do not use `.remove` on a smart set (regression)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21082
diff changeset
   787
44044
f3ad014b6a53 tests: avoid grafting the same change over and over
Martin von Zweigbergk <martinvonz@google.com>
parents: 44041
diff changeset
   788
graft skips ancestors
21200
a1381eea7c7d graft: do not use `.remove` on a smart set (regression)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21082
diff changeset
   789
44044
f3ad014b6a53 tests: avoid grafting the same change over and over
Martin von Zweigbergk <martinvonz@google.com>
parents: 44041
diff changeset
   790
  $ hg graft 21 3
23507
67045b5a903a graft: show hashes in user-facing messages
Mads Kiilerich <madski@unity3d.com>
parents: 23506
diff changeset
   791
  skipping ancestor revision 21:7e61b508e709
44044
f3ad014b6a53 tests: avoid grafting the same change over and over
Martin von Zweigbergk <martinvonz@google.com>
parents: 44041
diff changeset
   792
  grafting 3:4c60f11aa304 "3"
f3ad014b6a53 tests: avoid grafting the same change over and over
Martin von Zweigbergk <martinvonz@google.com>
parents: 44041
diff changeset
   793
  merging b and c to c
22302
9472284df4eb graft: fix collision detection with origin revisions that are missing
Mads Kiilerich <madski@unity3d.com>
parents: 21947
diff changeset
   794
21979
c2863cfe8a8a graft: allow regrafting ancestors with --force (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21947
diff changeset
   795
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
   796
c2863cfe8a8a graft: allow regrafting ancestors with --force (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21947
diff changeset
   797
  $ hg graft 19 0 6
c2863cfe8a8a graft: allow regrafting ancestors with --force (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21947
diff changeset
   798
  skipping ungraftable merge revision 6
23507
67045b5a903a graft: show hashes in user-facing messages
Mads Kiilerich <madski@unity3d.com>
parents: 23506
diff changeset
   799
  skipping ancestor revision 0:68795b066622
44091
3df0bd706c40 graftcopies: use _filter() for filtering out invalid copies
Martin von Zweigbergk <martinvonz@google.com>
parents: 44044
diff changeset
   800
  grafting 19:9627f653b421 "2"
3df0bd706c40 graftcopies: use _filter() for filtering out invalid copies
Martin von Zweigbergk <martinvonz@google.com>
parents: 44044
diff changeset
   801
  merging b
3df0bd706c40 graftcopies: use _filter() for filtering out invalid copies
Martin von Zweigbergk <martinvonz@google.com>
parents: 44044
diff changeset
   802
  note: graft of 19:9627f653b421 created no changes to commit
21979
c2863cfe8a8a graft: allow regrafting ancestors with --force (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21947
diff changeset
   803
  $ hg graft 19 0 6 --force
c2863cfe8a8a graft: allow regrafting ancestors with --force (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21947
diff changeset
   804
  skipping ungraftable merge revision 6
23505
bd5dbb8a05c8 graft: show more useful status information while grafting
Mads Kiilerich <madski@unity3d.com>
parents: 23504
diff changeset
   805
  grafting 19:9627f653b421 "2"
21979
c2863cfe8a8a graft: allow regrafting ancestors with --force (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21947
diff changeset
   806
  merging b
44091
3df0bd706c40 graftcopies: use _filter() for filtering out invalid copies
Martin von Zweigbergk <martinvonz@google.com>
parents: 44044
diff changeset
   807
  note: graft of 19:9627f653b421 created no changes to commit
23505
bd5dbb8a05c8 graft: show more useful status information while grafting
Mads Kiilerich <madski@unity3d.com>
parents: 23504
diff changeset
   808
  grafting 0:68795b066622 "0"
21979
c2863cfe8a8a graft: allow regrafting ancestors with --force (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21947
diff changeset
   809
c2863cfe8a8a graft: allow regrafting ancestors with --force (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21947
diff changeset
   810
graft --force after backout
c2863cfe8a8a graft: allow regrafting ancestors with --force (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21947
diff changeset
   811
c2863cfe8a8a graft: allow regrafting ancestors with --force (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21947
diff changeset
   812
  $ echo abc > a
44091
3df0bd706c40 graftcopies: use _filter() for filtering out invalid copies
Martin von Zweigbergk <martinvonz@google.com>
parents: 44044
diff changeset
   813
  $ hg ci -m 24
3df0bd706c40 graftcopies: use _filter() for filtering out invalid copies
Martin von Zweigbergk <martinvonz@google.com>
parents: 44044
diff changeset
   814
  $ hg backout 24
21979
c2863cfe8a8a graft: allow regrafting ancestors with --force (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21947
diff changeset
   815
  reverting a
44091
3df0bd706c40 graftcopies: use _filter() for filtering out invalid copies
Martin von Zweigbergk <martinvonz@google.com>
parents: 44044
diff changeset
   816
  changeset 25:71c4e63d4f98 backs out changeset 24:2e7ea477be26
3df0bd706c40 graftcopies: use _filter() for filtering out invalid copies
Martin von Zweigbergk <martinvonz@google.com>
parents: 44044
diff changeset
   817
  $ hg graft 24
3df0bd706c40 graftcopies: use _filter() for filtering out invalid copies
Martin von Zweigbergk <martinvonz@google.com>
parents: 44044
diff changeset
   818
  skipping ancestor revision 24:2e7ea477be26
21979
c2863cfe8a8a graft: allow regrafting ancestors with --force (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21947
diff changeset
   819
  [255]
44091
3df0bd706c40 graftcopies: use _filter() for filtering out invalid copies
Martin von Zweigbergk <martinvonz@google.com>
parents: 44044
diff changeset
   820
  $ hg graft 24 --force
3df0bd706c40 graftcopies: use _filter() for filtering out invalid copies
Martin von Zweigbergk <martinvonz@google.com>
parents: 44044
diff changeset
   821
  grafting 24:2e7ea477be26 "24"
21979
c2863cfe8a8a graft: allow regrafting ancestors with --force (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21947
diff changeset
   822
  merging a
c2863cfe8a8a graft: allow regrafting ancestors with --force (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21947
diff changeset
   823
  $ cat a
c2863cfe8a8a graft: allow regrafting ancestors with --force (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21947
diff changeset
   824
  abc
c2863cfe8a8a graft: allow regrafting ancestors with --force (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21947
diff changeset
   825
21980
f4e5753745e9 graft: make --force apply across continues (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21979
diff changeset
   826
graft --continue after --force
f4e5753745e9 graft: make --force apply across continues (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21979
diff changeset
   827
23463
bb0143e12f35 graft: use a real conflict for the tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 23167
diff changeset
   828
  $ echo def > a
44091
3df0bd706c40 graftcopies: use _filter() for filtering out invalid copies
Martin von Zweigbergk <martinvonz@google.com>
parents: 44044
diff changeset
   829
  $ hg ci -m 27
3df0bd706c40 graftcopies: use _filter() for filtering out invalid copies
Martin von Zweigbergk <martinvonz@google.com>
parents: 44044
diff changeset
   830
  $ hg graft 24 --force --tool internal:fail
3df0bd706c40 graftcopies: use _filter() for filtering out invalid copies
Martin von Zweigbergk <martinvonz@google.com>
parents: 44044
diff changeset
   831
  grafting 24:2e7ea477be26 "24"
21980
f4e5753745e9 graft: make --force apply across continues (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21979
diff changeset
   832
  abort: unresolved conflicts, can't continue
28963
fc1d75e7a98d graft: use single quotes around command hint
timeless <timeless@mozdev.org>
parents: 28634
diff changeset
   833
  (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
   834
  [255]
f4e5753745e9 graft: make --force apply across continues (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21979
diff changeset
   835
  $ hg resolve --all
f4e5753745e9 graft: make --force apply across continues (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21979
diff changeset
   836
  merging a
26614
ef1eb6df7071 simplemerge: move conflict warning message to filemerge
Siddharth Agarwal <sid0@fb.com>
parents: 26611
diff changeset
   837
  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
   838
  [1]
bb0143e12f35 graft: use a real conflict for the tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 23167
diff changeset
   839
  $ echo abc > a
bb0143e12f35 graft: use a real conflict for the tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 23167
diff changeset
   840
  $ hg resolve -m a
21980
f4e5753745e9 graft: make --force apply across continues (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21979
diff changeset
   841
  (no more unresolved files)
27625
cdb9493a7e2f graft: hook afterresolvedstates
timeless <timeless@mozdev.org>
parents: 27173
diff changeset
   842
  continue: hg graft --continue
21980
f4e5753745e9 graft: make --force apply across continues (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21979
diff changeset
   843
  $ hg graft -c
44091
3df0bd706c40 graftcopies: use _filter() for filtering out invalid copies
Martin von Zweigbergk <martinvonz@google.com>
parents: 44044
diff changeset
   844
  grafting 24:2e7ea477be26 "24"
21980
f4e5753745e9 graft: make --force apply across continues (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21979
diff changeset
   845
  $ cat a
f4e5753745e9 graft: make --force apply across continues (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21979
diff changeset
   846
  abc
22302
9472284df4eb graft: fix collision detection with origin revisions that are missing
Mads Kiilerich <madski@unity3d.com>
parents: 21947
diff changeset
   847
9472284df4eb graft: fix collision detection with origin revisions that are missing
Mads Kiilerich <madski@unity3d.com>
parents: 21947
diff changeset
   848
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
   849
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
   850
9472284df4eb graft: fix collision detection with origin revisions that are missing
Mads Kiilerich <madski@unity3d.com>
parents: 21947
diff changeset
   851
  $ hg up -qC 7
9472284df4eb graft: fix collision detection with origin revisions that are missing
Mads Kiilerich <madski@unity3d.com>
parents: 21947
diff changeset
   852
  $ 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
   853
  $ hg --config extensions.strip= strip 2
35393
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 33771
diff changeset
   854
  saved backup bundle to $TESTTMP/a/.hg/strip-backup/5c095ad7e90f-d323a1e4-backup.hg
22302
9472284df4eb graft: fix collision detection with origin revisions that are missing
Mads Kiilerich <madski@unity3d.com>
parents: 21947
diff changeset
   855
  $ hg graft tmp
24644
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   856
  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
   857
  [255]
23504
e172a1f2b5bb tests: test coverage for empty graft
Mads Kiilerich <madski@unity3d.com>
parents: 23482
diff changeset
   858
e172a1f2b5bb tests: test coverage for empty graft
Mads Kiilerich <madski@unity3d.com>
parents: 23482
diff changeset
   859
Empty graft
e172a1f2b5bb tests: test coverage for empty graft
Mads Kiilerich <madski@unity3d.com>
parents: 23482
diff changeset
   860
44091
3df0bd706c40 graftcopies: use _filter() for filtering out invalid copies
Martin von Zweigbergk <martinvonz@google.com>
parents: 44044
diff changeset
   861
  $ hg up -qr 22
23504
e172a1f2b5bb tests: test coverage for empty graft
Mads Kiilerich <madski@unity3d.com>
parents: 23482
diff changeset
   862
  $ hg tag -f something
44091
3df0bd706c40 graftcopies: use _filter() for filtering out invalid copies
Martin von Zweigbergk <martinvonz@google.com>
parents: 44044
diff changeset
   863
  $ hg graft -qr 23
3df0bd706c40 graftcopies: use _filter() for filtering out invalid copies
Martin von Zweigbergk <martinvonz@google.com>
parents: 44044
diff changeset
   864
  $ hg graft -f 23
3df0bd706c40 graftcopies: use _filter() for filtering out invalid copies
Martin von Zweigbergk <martinvonz@google.com>
parents: 44044
diff changeset
   865
  grafting 23:72d9c7c75bcc "24"
3df0bd706c40 graftcopies: use _filter() for filtering out invalid copies
Martin von Zweigbergk <martinvonz@google.com>
parents: 44044
diff changeset
   866
  note: graft of 23:72d9c7c75bcc created no changes to commit
24643
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   867
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   868
  $ cd ..
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   869
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   870
Graft to duplicate a commit
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   871
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   872
  $ hg init graftsibling
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   873
  $ cd graftsibling
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   874
  $ touch a
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   875
  $ hg commit -qAm a
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   876
  $ touch b
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   877
  $ hg commit -qAm b
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   878
  $ hg log -G -T '{rev}\n'
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   879
  @  1
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   880
  |
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   881
  o  0
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   882
  
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   883
  $ hg up -q 0
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   884
  $ hg graft -r 1
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   885
  grafting 1:0e067c57feba "b" (tip)
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   886
  $ hg log -G -T '{rev}\n'
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   887
  @  2
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   888
  |
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   889
  | o  1
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   890
  |/
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   891
  o  0
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   892
  
24644
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   893
Graft to duplicate a commit twice
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   894
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   895
  $ hg up -q 0
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   896
  $ hg graft -r 2
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   897
  grafting 2:044ec77f6389 "b" (tip)
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   898
  $ hg log -G -T '{rev}\n'
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   899
  @  3
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   900
  |
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   901
  | o  2
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   902
  |/
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   903
  | o  1
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   904
  |/
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   905
  o  0
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   906