tests/test-graft.t
author Arseniy Alekseyev <aalekseyev@janestreet.com>
Thu, 15 Feb 2024 15:21:43 +0000
branchstable
changeset 51388 cb5175edd225
parent 48431 6b1049d71c3e
permissions -rw-r--r--
cext: fix potential memory leaks of list items appended with PyList_Append Also reduce the duplication in the tricky code that uses PyList_Append by extracting it into a function `pylist_append_owned`.
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
45840
527ce85c2e60 errors: introduce StateError and use it from commands and cmdutil
Martin von Zweigbergk <martinvonz@google.com>
parents: 45827
diff changeset
    88
  [20]
28121
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
45827
8d72e29ad1e0 errors: introduce InputError and use it from commands and cmdutil
Martin von Zweigbergk <martinvonz@google.com>
parents: 45488
diff changeset
    95
  [10]
15361
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
45827
8d72e29ad1e0 errors: introduce InputError and use it from commands and cmdutil
Martin von Zweigbergk <martinvonz@google.com>
parents: 45488
diff changeset
   122
  [10]
41174
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
45827
8d72e29ad1e0 errors: introduce InputError and use it from commands and cmdutil
Martin von Zweigbergk <martinvonz@google.com>
parents: 45488
diff changeset
   125
  [10]
41174
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
45840
527ce85c2e60 errors: introduce StateError and use it from commands and cmdutil
Martin von Zweigbergk <martinvonz@google.com>
parents: 45827
diff changeset
   133
  [20]
15361
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):
44197
17e12938f8e7 copies: print debug information about copies per side/branch
Martin von Zweigbergk <martinvonz@google.com>
parents: 44091
diff changeset
   207
     on local side:
17e12938f8e7 copies: print debug information about copies per side/branch
Martin von Zweigbergk <martinvonz@google.com>
parents: 44091
diff changeset
   208
      src: 'a' -> dst: 'b' *
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   209
    checking for directory renames
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   210
  resolving manifests
18605
bcf29565d89f manifestmerge: pass in branchmerge and force separately
Siddharth Agarwal <sid0@fb.com>
parents: 18541
diff changeset
   211
   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
   212
   ancestor: 68795b066622, local: ef0ef43d49e7+, remote: 5d205f8b35b6
46072
69429972ff1f tests: correct the output order about starting a background thread for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 45916
diff changeset
   213
  starting 4 threads for background file closing (?)
21391
cb15835456cb merge: change debug logging - test output changes but no real changes
Mads Kiilerich <madski@unity3d.com>
parents: 21389
diff changeset
   214
   preserving b for resolve of b
48427
38941a28406a mergestate: merge `preresolve()` into `resolve()`
Martin von Zweigbergk <martinvonz@google.com>
parents: 46650
diff changeset
   215
   b: local copied/moved from a -> m
27161
296d55def9c4 filemerge: add debug output for whether this is a change/delete conflict
Siddharth Agarwal <sid0@fb.com>
parents: 26618
diff changeset
   216
  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
   217
  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
   218
  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
   219
   premerge successful
23749
a387b0390082 localrepo: show headline notes in commitctx before showing filenames
Mads Kiilerich <madski@unity3d.com>
parents: 23514
diff changeset
   220
  committing files:
16601
0c98820be15c filectx: handle some other simple cases for finding merge ancestor
Matt Mackall <mpm@selenic.com>
parents: 16600
diff changeset
   221
  b
23749
a387b0390082 localrepo: show headline notes in commitctx before showing filenames
Mads Kiilerich <madski@unity3d.com>
parents: 23514
diff changeset
   222
  committing manifest
a387b0390082 localrepo: show headline notes in commitctx before showing filenames
Mads Kiilerich <madski@unity3d.com>
parents: 23514
diff changeset
   223
  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
   224
  updating the branch cache
23505
bd5dbb8a05c8 graft: show more useful status information while grafting
Mads Kiilerich <madski@unity3d.com>
parents: 23504
diff changeset
   225
  grafting 5:97f8bfe72746 "5"
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   226
  resolving manifests
18605
bcf29565d89f manifestmerge: pass in branchmerge and force separately
Siddharth Agarwal <sid0@fb.com>
parents: 18541
diff changeset
   227
   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
   228
   ancestor: 4c60f11aa304, local: 6b9e5368ca4e+, remote: 97f8bfe72746
21389
e741972017d9 merge: change priority / ordering of merge actions
Mads Kiilerich <madski@unity3d.com>
parents: 21267
diff changeset
   229
   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
   230
  getting e
23749
a387b0390082 localrepo: show headline notes in commitctx before showing filenames
Mads Kiilerich <madski@unity3d.com>
parents: 23514
diff changeset
   231
  committing files:
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   232
  e
23749
a387b0390082 localrepo: show headline notes in commitctx before showing filenames
Mads Kiilerich <madski@unity3d.com>
parents: 23514
diff changeset
   233
  committing manifest
a387b0390082 localrepo: show headline notes in commitctx before showing filenames
Mads Kiilerich <madski@unity3d.com>
parents: 23514
diff changeset
   234
  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
   235
  updating the branch cache
27173
8a8f5d71a49a graft: improve --continue abort message
timeless <timeless@mozdev.org>
parents: 27172
diff changeset
   236
  $ HGEDITOR=cat hg graft 4 3 --log --debug
8a8f5d71a49a graft: improve --continue abort message
timeless <timeless@mozdev.org>
parents: 27172
diff changeset
   237
  scanning for duplicate grafts
23505
bd5dbb8a05c8 graft: show more useful status information while grafting
Mads Kiilerich <madski@unity3d.com>
parents: 23504
diff changeset
   238
  grafting 4:9c233e8e184d "4"
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   239
  resolving manifests
18605
bcf29565d89f manifestmerge: pass in branchmerge and force separately
Siddharth Agarwal <sid0@fb.com>
parents: 18541
diff changeset
   240
   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
   241
   ancestor: 4c60f11aa304, local: 1905859650ec+, remote: 9c233e8e184d
21389
e741972017d9 merge: change priority / ordering of merge actions
Mads Kiilerich <madski@unity3d.com>
parents: 21267
diff changeset
   242
   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
   243
  getting d
45488
c4f14db3da1d merge: move initial handling of mergeactions near to later one
Pulkit Goyal <7895pulkit@gmail.com>
parents: 44906
diff changeset
   244
   preserving e for resolve of e
48427
38941a28406a mergestate: merge `preresolve()` into `resolve()`
Martin von Zweigbergk <martinvonz@google.com>
parents: 46650
diff changeset
   245
   e: versions differ -> m
27161
296d55def9c4 filemerge: add debug output for whether this is a change/delete conflict
Siddharth Agarwal <sid0@fb.com>
parents: 26618
diff changeset
   246
  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
   247
  merging e
28011
8abd9f785030 merge: add file ancestor linknode to mergestate
Durham Goode <durham@fb.com>
parents: 27899
diff changeset
   248
  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
   249
  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
   250
  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
   251
  (use 'hg resolve' and 'hg graft --continue')
44725
16c361152133 graft: exit 1 on conflicts, like merge
Valentin Gatien-Baron <vgatien-baron@janestreet.com>
parents: 44442
diff changeset
   252
  [1]
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   253
27172
4d61c847e06c summary: mention graft
timeless <timeless@mozdev.org>
parents: 27161
diff changeset
   254
Summary should mention graft:
4d61c847e06c summary: mention graft
timeless <timeless@mozdev.org>
parents: 27161
diff changeset
   255
4d61c847e06c summary: mention graft
timeless <timeless@mozdev.org>
parents: 27161
diff changeset
   256
  $ hg summary |grep graft
4d61c847e06c summary: mention graft
timeless <timeless@mozdev.org>
parents: 27161
diff changeset
   257
  commit: 2 modified, 2 unknown, 1 unresolved (graft in progress)
4d61c847e06c summary: mention graft
timeless <timeless@mozdev.org>
parents: 27161
diff changeset
   258
33771
96f43981c1c4 morestatus: move fb extension to core by plugging to `hg status --verbose`
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32267
diff changeset
   259
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
   260
96f43981c1c4 morestatus: move fb extension to core by plugging to `hg status --verbose`
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32267
diff changeset
   261
  $ 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
   262
  M d
96f43981c1c4 morestatus: move fb extension to core by plugging to `hg status --verbose`
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32267
diff changeset
   263
  M e
96f43981c1c4 morestatus: move fb extension to core by plugging to `hg status --verbose`
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32267
diff changeset
   264
  ? a.orig
96f43981c1c4 morestatus: move fb extension to core by plugging to `hg status --verbose`
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32267
diff changeset
   265
  ? e.orig
96f43981c1c4 morestatus: move fb extension to core by plugging to `hg status --verbose`
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32267
diff changeset
   266
  # 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
   267
  
96f43981c1c4 morestatus: move fb extension to core by plugging to `hg status --verbose`
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32267
diff changeset
   268
  # 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
   269
  # 
96f43981c1c4 morestatus: move fb extension to core by plugging to `hg status --verbose`
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32267
diff changeset
   270
  #     e
96f43981c1c4 morestatus: move fb extension to core by plugging to `hg status --verbose`
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32267
diff changeset
   271
  # 
96f43981c1c4 morestatus: move fb extension to core by plugging to `hg status --verbose`
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32267
diff changeset
   272
  # 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
   273
  
38341
50f5fc232c16 morestatus: remove some extra spaces
Pulkit Goyal <7895pulkit@gmail.com>
parents: 38311
diff changeset
   274
  # 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
   275
  # To abort:       hg graft --abort
42532
12243f15d53e statecheck: added support for STATES
Taapas Agrawal <taapas2897@gmail.com>
parents: 42286
diff changeset
   276
  # 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
   277
  
96f43981c1c4 morestatus: move fb extension to core by plugging to `hg status --verbose`
Pulkit Goyal <7895pulkit@gmail.com>
parents: 32267
diff changeset
   278
19253
e078ea9b4ce4 graft: refuse to commit an interrupted graft (issue3667)
Simon King <simon@simonking.org.uk>
parents: 18648
diff changeset
   279
Commit while interrupted should fail:
e078ea9b4ce4 graft: refuse to commit an interrupted graft (issue3667)
Simon King <simon@simonking.org.uk>
parents: 18648
diff changeset
   280
e078ea9b4ce4 graft: refuse to commit an interrupted graft (issue3667)
Simon King <simon@simonking.org.uk>
parents: 18648
diff changeset
   281
  $ hg ci -m 'commit interrupted graft'
19476
4fed15d4c5aa commands: add checks for unfinished operations (issue3955)
Matt Mackall <mpm@selenic.com>
parents: 19332
diff changeset
   282
  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
   283
  (use 'hg graft --continue' or 'hg graft --stop' to stop)
45840
527ce85c2e60 errors: introduce StateError and use it from commands and cmdutil
Martin von Zweigbergk <martinvonz@google.com>
parents: 45827
diff changeset
   284
  [20]
19253
e078ea9b4ce4 graft: refuse to commit an interrupted graft (issue3667)
Simon King <simon@simonking.org.uk>
parents: 18648
diff changeset
   285
19332
0af993732f66 update: remove .hg/graftstate on clean (issue3970)
Siddharth Agarwal <sid0@fb.com>
parents: 19253
diff changeset
   286
Abort the graft and try committing:
0af993732f66 update: remove .hg/graftstate on clean (issue3970)
Siddharth Agarwal <sid0@fb.com>
parents: 19253
diff changeset
   287
0af993732f66 update: remove .hg/graftstate on clean (issue3970)
Siddharth Agarwal <sid0@fb.com>
parents: 19253
diff changeset
   288
  $ hg up -C .
0af993732f66 update: remove .hg/graftstate on clean (issue3970)
Siddharth Agarwal <sid0@fb.com>
parents: 19253
diff changeset
   289
  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
   290
  $ echo c >> e
0af993732f66 update: remove .hg/graftstate on clean (issue3970)
Siddharth Agarwal <sid0@fb.com>
parents: 19253
diff changeset
   291
  $ hg ci -mtest
0af993732f66 update: remove .hg/graftstate on clean (issue3970)
Siddharth Agarwal <sid0@fb.com>
parents: 19253
diff changeset
   292
23514
3575f42e1b7b test-graft: use strip extension instead of mq extension
Augie Fackler <raf@durin42.com>
parents: 23508
diff changeset
   293
  $ hg strip . --config extensions.strip=
19332
0af993732f66 update: remove .hg/graftstate on clean (issue3970)
Siddharth Agarwal <sid0@fb.com>
parents: 19253
diff changeset
   294
  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
   295
  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
   296
0af993732f66 update: remove .hg/graftstate on clean (issue3970)
Siddharth Agarwal <sid0@fb.com>
parents: 19253
diff changeset
   297
Graft again:
0af993732f66 update: remove .hg/graftstate on clean (issue3970)
Siddharth Agarwal <sid0@fb.com>
parents: 19253
diff changeset
   298
0af993732f66 update: remove .hg/graftstate on clean (issue3970)
Siddharth Agarwal <sid0@fb.com>
parents: 19253
diff changeset
   299
  $ 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
   300
  skipping ungraftable merge revision 6
23507
67045b5a903a graft: show hashes in user-facing messages
Mads Kiilerich <madski@unity3d.com>
parents: 23506
diff changeset
   301
  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
   302
  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
   303
  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
   304
  grafting 4:9c233e8e184d "4"
19332
0af993732f66 update: remove .hg/graftstate on clean (issue3970)
Siddharth Agarwal <sid0@fb.com>
parents: 19253
diff changeset
   305
  merging e
26614
ef1eb6df7071 simplemerge: move conflict warning message to filemerge
Siddharth Agarwal <sid0@fb.com>
parents: 26611
diff changeset
   306
  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
   307
  abort: unresolved conflicts, can't continue
28963
fc1d75e7a98d graft: use single quotes around command hint
timeless <timeless@mozdev.org>
parents: 28634
diff changeset
   308
  (use 'hg resolve' and 'hg graft --continue')
44725
16c361152133 graft: exit 1 on conflicts, like merge
Valentin Gatien-Baron <vgatien-baron@janestreet.com>
parents: 44442
diff changeset
   309
  [1]
19332
0af993732f66 update: remove .hg/graftstate on clean (issue3970)
Siddharth Agarwal <sid0@fb.com>
parents: 19253
diff changeset
   310
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   311
Continue without resolve should fail:
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   312
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   313
  $ hg graft -c
23505
bd5dbb8a05c8 graft: show more useful status information while grafting
Mads Kiilerich <madski@unity3d.com>
parents: 23504
diff changeset
   314
  grafting 4:9c233e8e184d "4"
29975
c15f06109b7a localrepo: use single quotes in use warning
timeless <timeless@mozdev.org>
parents: 28963
diff changeset
   315
  abort: unresolved merge conflicts (see 'hg help resolve')
45916
fa87536d3d70 errors: raise StateError when there are unresolves merge conflicts
Martin von Zweigbergk <martinvonz@google.com>
parents: 45840
diff changeset
   316
  [20]
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   317
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   318
Fix up:
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   319
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   320
  $ echo b > e
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   321
  $ 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
   322
  (no more unresolved files)
27625
cdb9493a7e2f graft: hook afterresolvedstates
timeless <timeless@mozdev.org>
parents: 27173
diff changeset
   323
  continue: hg graft --continue
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   324
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   325
Continue with a revision should fail:
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   326
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   327
  $ hg graft -c 6
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   328
  abort: can't specify --continue and revisions
45827
8d72e29ad1e0 errors: introduce InputError and use it from commands and cmdutil
Martin von Zweigbergk <martinvonz@google.com>
parents: 45488
diff changeset
   329
  [10]
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   330
16992
55e7f352b1d3 graft: allow -r to specify revisions
Thomas Arendsen Hein <thomas@intevation.de>
parents: 16913
diff changeset
   331
  $ hg graft -c -r 6
55e7f352b1d3 graft: allow -r to specify revisions
Thomas Arendsen Hein <thomas@intevation.de>
parents: 16913
diff changeset
   332
  abort: can't specify --continue and revisions
45827
8d72e29ad1e0 errors: introduce InputError and use it from commands and cmdutil
Martin von Zweigbergk <martinvonz@google.com>
parents: 45488
diff changeset
   333
  [10]
16992
55e7f352b1d3 graft: allow -r to specify revisions
Thomas Arendsen Hein <thomas@intevation.de>
parents: 16913
diff changeset
   334
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   335
Continue for real, clobber usernames
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   336
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   337
  $ hg graft -c -U
23505
bd5dbb8a05c8 graft: show more useful status information while grafting
Mads Kiilerich <madski@unity3d.com>
parents: 23504
diff changeset
   338
  grafting 4:9c233e8e184d "4"
bd5dbb8a05c8 graft: show more useful status information while grafting
Mads Kiilerich <madski@unity3d.com>
parents: 23504
diff changeset
   339
  grafting 3:4c60f11aa304 "3"
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   340
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   341
Compare with original:
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   342
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   343
  $ hg diff -r 6
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   344
  $ hg status --rev 0:. -C
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   345
  M d
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   346
  M e
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   347
  A b
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   348
    a
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   349
  A c
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   350
    a
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   351
  R a
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   352
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   353
View graph:
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   354
20117
aa9385f983fa tests: don't load unnecessary graphlog extension
Martin Geisler <martin@geisler.net>
parents: 19893
diff changeset
   355
  $ 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
   356
  @  test@11.draft: 3
0c98820be15c filectx: handle some other simple cases for finding merge ancestor
Matt Mackall <mpm@selenic.com>
parents: 16600
diff changeset
   357
  |
0c98820be15c filectx: handle some other simple cases for finding merge ancestor
Matt Mackall <mpm@selenic.com>
parents: 16600
diff changeset
   358
  o  test@10.draft: 4
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   359
  |
16601
0c98820be15c filectx: handle some other simple cases for finding merge ancestor
Matt Mackall <mpm@selenic.com>
parents: 16600
diff changeset
   360
  o  test@9.draft: 5
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   361
  |
16601
0c98820be15c filectx: handle some other simple cases for finding merge ancestor
Matt Mackall <mpm@selenic.com>
parents: 16600
diff changeset
   362
  o  bar@8.draft: 1
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   363
  |
15918
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
   364
  o  foo@7.draft: 2
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   365
  |
15918
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
   366
  | o    test@6.secret: 6
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   367
  | |\
15918
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
   368
  | | o  test@5.draft: 5
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   369
  | | |
15918
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
   370
  | o |  test@4.draft: 4
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  baz@3.public: 3
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@2.public: 2
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  bar@1.public: 1
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@0.public: 0
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   379
  
15506
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   380
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
   381
  $ hg up -q 0
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   382
  $ echo 'g'>g
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   383
  $ hg add g
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   384
  $ hg ci -m 7
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   385
  created new head
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   386
  $ hg graft 7
23505
bd5dbb8a05c8 graft: show more useful status information while grafting
Mads Kiilerich <madski@unity3d.com>
parents: 23504
diff changeset
   387
  grafting 7:ef0ef43d49e7 "2"
15506
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   388
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   389
  $ 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
   390
  7:ef0ef43d49e79e81ddafdc7997401ba0041efc82
15506
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   391
  $ 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
   392
  2:5c095ad7e90f871700f02dd1fa5012cb4498a2d4
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   393
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   394
  $ hg log --debug -r tip
24644
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   395
  changeset:   13:7a4785234d87ec1aa420ed6b11afe40fa73e12a9
15506
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   396
  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
   397
  phase:       draft
16601
0c98820be15c filectx: handle some other simple cases for finding merge ancestor
Matt Mackall <mpm@selenic.com>
parents: 16600
diff changeset
   398
  parent:      12:b592ea63bb0c19a6c5c44685ee29a2284f9f1b8f
15506
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   399
  parent:      -1:0000000000000000000000000000000000000000
16601
0c98820be15c filectx: handle some other simple cases for finding merge ancestor
Matt Mackall <mpm@selenic.com>
parents: 16600
diff changeset
   400
  manifest:    13:dc313617b8c32457c0d589e0dbbedfe71f3cd637
15506
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   401
  user:        foo
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   402
  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
   403
  files+:      b
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   404
  files-:      a
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   405
  extra:       branch=default
24644
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   406
  extra:       intermediate-source=ef0ef43d49e79e81ddafdc7997401ba0041efc82
15506
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   407
  extra:       source=5c095ad7e90f871700f02dd1fa5012cb4498a2d4
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   408
  description:
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   409
  2
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   410
  
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   411
  
15508
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
   412
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
   413
  $ hg up -q 6
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
   414
  $ hg graft 7
23507
67045b5a903a graft: show hashes in user-facing messages
Mads Kiilerich <madski@unity3d.com>
parents: 23506
diff changeset
   415
  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
   416
  [255]
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
   417
28052
b59ef0c21405 tests: use portable diff script via extdiff extension
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 28034
diff changeset
   418
  $ 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
   419
  --- */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
   420
  +++ */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
   421
  @@ -1,18 +1,18 @@
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   422
   # HG changeset patch
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   423
  -# User test
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   424
  +# User foo
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   425
   # Date 0 0
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   426
   #      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
   427
  -# Node ID 5c095ad7e90f871700f02dd1fa5012cb4498a2d4
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   428
  -# Parent  5d205f8b35b66bc36375c9534ffd3237730e8f04
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   429
  +# Node ID 7a4785234d87ec1aa420ed6b11afe40fa73e12a9
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   430
  +# Parent  b592ea63bb0c19a6c5c44685ee29a2284f9f1b8f
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   431
   2
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   432
   
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   433
  -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
   434
  +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
   435
   --- 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
   436
   +++ /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
   437
   @@ -1,1 +0,0 @@
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   438
  --b
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   439
  -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
   440
  +-a
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   441
  +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
   442
   --- /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
   443
   +++ 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
   444
   @@ -0,0 +1,1 @@
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   445
  -+b
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   446
  ++a
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   447
  [1]
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   448
28052
b59ef0c21405 tests: use portable diff script via extdiff extension
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 28034
diff changeset
   449
  $ 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
   450
  --- */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
   451
  +++ */hg-7a4785234d87.patch	* (glob)
26229
d1530c6e8613 extdiff: enable -I/-X with --patch
Matt Harbison <matt_harbison@yahoo.com>
parents: 26228
diff changeset
   452
  @@ -1,8 +1,8 @@
d1530c6e8613 extdiff: enable -I/-X with --patch
Matt Harbison <matt_harbison@yahoo.com>
parents: 26228
diff changeset
   453
   # HG changeset patch
d1530c6e8613 extdiff: enable -I/-X with --patch
Matt Harbison <matt_harbison@yahoo.com>
parents: 26228
diff changeset
   454
  -# User test
d1530c6e8613 extdiff: enable -I/-X with --patch
Matt Harbison <matt_harbison@yahoo.com>
parents: 26228
diff changeset
   455
  +# User foo
d1530c6e8613 extdiff: enable -I/-X with --patch
Matt Harbison <matt_harbison@yahoo.com>
parents: 26228
diff changeset
   456
   # Date 0 0
d1530c6e8613 extdiff: enable -I/-X with --patch
Matt Harbison <matt_harbison@yahoo.com>
parents: 26228
diff changeset
   457
   #      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
   458
  -# Node ID 5c095ad7e90f871700f02dd1fa5012cb4498a2d4
d1530c6e8613 extdiff: enable -I/-X with --patch
Matt Harbison <matt_harbison@yahoo.com>
parents: 26228
diff changeset
   459
  -# Parent  5d205f8b35b66bc36375c9534ffd3237730e8f04
d1530c6e8613 extdiff: enable -I/-X with --patch
Matt Harbison <matt_harbison@yahoo.com>
parents: 26228
diff changeset
   460
  +# Node ID 7a4785234d87ec1aa420ed6b11afe40fa73e12a9
d1530c6e8613 extdiff: enable -I/-X with --patch
Matt Harbison <matt_harbison@yahoo.com>
parents: 26228
diff changeset
   461
  +# Parent  b592ea63bb0c19a6c5c44685ee29a2284f9f1b8f
d1530c6e8613 extdiff: enable -I/-X with --patch
Matt Harbison <matt_harbison@yahoo.com>
parents: 26228
diff changeset
   462
   2
d1530c6e8613 extdiff: enable -I/-X with --patch
Matt Harbison <matt_harbison@yahoo.com>
parents: 26228
diff changeset
   463
   
d1530c6e8613 extdiff: enable -I/-X with --patch
Matt Harbison <matt_harbison@yahoo.com>
parents: 26228
diff changeset
   464
  [1]
26228
0fd20a71abdb extdiff: add a --patch argument for diffing changeset deltas
Matt Harbison <matt_harbison@yahoo.com>
parents: 25589
diff changeset
   465
15508
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
   466
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
   467
  $ 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
   468
  $ hg graft 2
24644
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   469
  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
   470
  [255]
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
   471
  $ hg graft 7
24644
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   472
  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
   473
  [255]
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
   474
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
   475
  $ hg up -q 7
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
   476
  $ hg graft 2
23507
67045b5a903a graft: show hashes in user-facing messages
Mads Kiilerich <madski@unity3d.com>
parents: 23506
diff changeset
   477
  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
   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 tip
24644
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   480
  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
   481
  [255]
17045
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   482
16660
2a71cc53f244 graft: implement --log (issue3438)
Levi Bard <levi@unity3d.com>
parents: 16601
diff changeset
   483
Graft with --log
2a71cc53f244 graft: implement --log (issue3438)
Levi Bard <levi@unity3d.com>
parents: 16601
diff changeset
   484
2a71cc53f244 graft: implement --log (issue3438)
Levi Bard <levi@unity3d.com>
parents: 16601
diff changeset
   485
  $ hg up -Cq 1
2a71cc53f244 graft: implement --log (issue3438)
Levi Bard <levi@unity3d.com>
parents: 16601
diff changeset
   486
  $ 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
   487
  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
   488
  $ 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
   489
  14:0c921c65ef1e 1:5d205f8b35b6  3
16660
2a71cc53f244 graft: implement --log (issue3438)
Levi Bard <levi@unity3d.com>
parents: 16601
diff changeset
   490
  (grafted from 4c60f11aa304a54ae1c199feb94e7fc771e51ed8)
16913
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 16795
diff changeset
   491
17045
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   492
Resolve conflicted graft
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   493
  $ 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
   494
  $ echo b > a
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   495
  $ 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
   496
  created new head
23463
bb0143e12f35 graft: use a real conflict for the tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 23167
diff changeset
   497
  $ 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
   498
  $ 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
   499
  $ 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
   500
  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
   501
  abort: unresolved conflicts, can't continue
28963
fc1d75e7a98d graft: use single quotes around command hint
timeless <timeless@mozdev.org>
parents: 28634
diff changeset
   502
  (use 'hg resolve' and 'hg graft --continue')
44725
16c361152133 graft: exit 1 on conflicts, like merge
Valentin Gatien-Baron <vgatien-baron@janestreet.com>
parents: 44442
diff changeset
   503
  [1]
17045
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   504
  $ hg resolve --all
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   505
  merging a
26614
ef1eb6df7071 simplemerge: move conflict warning message to filemerge
Siddharth Agarwal <sid0@fb.com>
parents: 26611
diff changeset
   506
  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
   507
  [1]
bb0143e12f35 graft: use a real conflict for the tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 23167
diff changeset
   508
  $ cat a
bb0143e12f35 graft: use a real conflict for the tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 23167
diff changeset
   509
  <<<<<<< local: aaa4406d4f0a - test: 9
bb0143e12f35 graft: use a real conflict for the tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 23167
diff changeset
   510
  c
bb0143e12f35 graft: use a real conflict for the tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 23167
diff changeset
   511
  =======
bb0143e12f35 graft: use a real conflict for the tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 23167
diff changeset
   512
  b
30460
ce3a133f71b3 conflicts: make spacing consistent in conflict markers
Kostia Balytskyi <ikostia@fb.com>
parents: 30229
diff changeset
   513
  >>>>>>> graft: 5d205f8b35b6 - bar: 1
23463
bb0143e12f35 graft: use a real conflict for the tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 23167
diff changeset
   514
  $ echo b > a
bb0143e12f35 graft: use a real conflict for the tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 23167
diff changeset
   515
  $ 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
   516
  (no more unresolved files)
27625
cdb9493a7e2f graft: hook afterresolvedstates
timeless <timeless@mozdev.org>
parents: 27173
diff changeset
   517
  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
   518
  $ hg graft -c
23505
bd5dbb8a05c8 graft: show more useful status information while grafting
Mads Kiilerich <madski@unity3d.com>
parents: 23504
diff changeset
   519
  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
   520
  $ 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
   521
  # HG changeset patch
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   522
  # User bar
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   523
  # 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
   524
  #      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
   525
  # Node ID f67661df0c4804d301f064f332b57e7d5ddaf2be
bb0143e12f35 graft: use a real conflict for the tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 23167
diff changeset
   526
  # Parent  aaa4406d4f0ae9befd6e58c82ec63706460cbca6
17045
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   527
  1
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   528
  
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   529
  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
   530
  --- a/a
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   531
  +++ b/a
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   532
  @@ -1,1 +1,1 @@
23463
bb0143e12f35 graft: use a real conflict for the tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 23167
diff changeset
   533
  -c
17045
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   534
  +b
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   535
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   536
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
   537
  $ echo c > a
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   538
  $ 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
   539
  $ 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
   540
  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
   541
  abort: unresolved conflicts, can't continue
28963
fc1d75e7a98d graft: use single quotes around command hint
timeless <timeless@mozdev.org>
parents: 28634
diff changeset
   542
  (use 'hg resolve' and 'hg graft --continue')
44725
16c361152133 graft: exit 1 on conflicts, like merge
Valentin Gatien-Baron <vgatien-baron@janestreet.com>
parents: 44442
diff changeset
   543
  [1]
17045
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   544
  $ hg resolve --all
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   545
  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
   546
  (no more unresolved files)
27625
cdb9493a7e2f graft: hook afterresolvedstates
timeless <timeless@mozdev.org>
parents: 27173
diff changeset
   547
  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
   548
  $ hg graft -c
23505
bd5dbb8a05c8 graft: show more useful status information while grafting
Mads Kiilerich <madski@unity3d.com>
parents: 23504
diff changeset
   549
  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
   550
  $ 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
   551
  # HG changeset patch
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   552
  # User test
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   553
  # 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
   554
  #      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
   555
  # Node ID 9627f653b421c61fc1ea4c4e366745070fa3d2bc
bb0143e12f35 graft: use a real conflict for the tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 23167
diff changeset
   556
  # Parent  ee295f490a40b97f3d18dd4c4f1c8936c233b612
17045
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   557
  2
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   558
  
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   559
  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
   560
  rename from a
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   561
  rename to b
17185
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   562
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   563
Test simple origin(), with and without args
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   564
  $ hg log -r 'origin()'
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   565
  changeset:   1:5d205f8b35b6
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   566
  user:        bar
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   567
  date:        Thu Jan 01 00:00:00 1970 +0000
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   568
  summary:     1
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   569
  
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   570
  changeset:   2:5c095ad7e90f
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   571
  user:        test
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   572
  date:        Thu Jan 01 00:00:00 1970 +0000
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   573
  summary:     2
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   574
  
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   575
  changeset:   3:4c60f11aa304
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   576
  user:        baz
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   577
  date:        Thu Jan 01 00:00:00 1970 +0000
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   578
  summary:     3
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   579
  
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   580
  changeset:   4:9c233e8e184d
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   581
  user:        test
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   582
  date:        Thu Jan 01 00:00:00 1970 +0000
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   583
  summary:     4
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   584
  
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   585
  changeset:   5:97f8bfe72746
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   586
  branch:      stable
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   587
  parent:      3:4c60f11aa304
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   588
  user:        test
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   589
  date:        Thu Jan 01 00:00:00 1970 +0000
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   590
  summary:     5
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   591
  
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   592
  $ hg log -r 'origin(7)'
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   593
  changeset:   2:5c095ad7e90f
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   594
  user:        test
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   595
  date:        Thu Jan 01 00:00:00 1970 +0000
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   596
  summary:     2
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   597
  
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   598
Now transplant a graft to test following through copies
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   599
  $ hg up -q 0
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   600
  $ hg branch -q dev
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   601
  $ hg ci -qm "dev branch"
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   602
  $ hg --config extensions.transplant= transplant -q 7
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   603
  $ hg log -r 'origin(.)'
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   604
  changeset:   2:5c095ad7e90f
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   605
  user:        test
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   606
  date:        Thu Jan 01 00:00:00 1970 +0000
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   607
  summary:     2
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   608
  
21765
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   609
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
   610
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
   611
tests.
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   612
  $ 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
   613
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   614
The graft case
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   615
  $ 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
   616
  7: 7ae846e9111fc8f57745634250c7b9ac0a60689b
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   617
  branch=default
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   618
  convert_revision=ef0ef43d49e79e81ddafdc7997401ba0041efc82
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   619
  source=e0213322b2c1a5d5d236c74e79666441bee67a7d
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   620
  $ 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
   621
  changeset:   2:e0213322b2c1
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   622
  user:        test
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   623
  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
   624
  summary:     2
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   625
  
25589
273d94255e1e convert: update 'intermediate-source' in the destination's extras dictionary
Matt Harbison <matt_harbison@yahoo.com>
parents: 25125
diff changeset
   626
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
   627
'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
   628
  $ 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
   629
   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
   630
   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
   631
   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
   632
   Extra: source=e0213322b2c1a5d5d236c74e79666441bee67a7d
a3c2d9211294 templater: don't overwrite the keyword mapping in runsymbol() (issue4362)
Matt Harbison <matt_harbison@yahoo.com>
parents: 22897
diff changeset
   633
21765
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   634
The transplant case
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   635
  $ 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
   636
  21: fbb6c5cc81002f2b4b49c9d731404688bcae5ade
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   637
  branch=dev
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   638
  convert_revision=7e61b508e709a11d28194a5359bc3532d910af21
31452
52dabcc49968 templatekw: make join() escape values of extras (BC) (issue5504)
Yuya Nishihara <yuya@tcha.org>
parents: 30581
diff changeset
   639
  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
   640
  $ 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
   641
  changeset:   2:e0213322b2c1
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   642
  user:        test
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   643
  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
   644
  summary:     2
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   645
  
44255f7ce886 convert: update the transplant, rebase and graft references in 'extra'
Matt Harbison <matt_harbison@yahoo.com>
parents: 21416
diff changeset
   646
17186
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   647
Test simple destination
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   648
  $ hg log -r 'destination()'
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   649
  changeset:   7:ef0ef43d49e7
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   650
  parent:      0:68795b066622
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   651
  user:        foo
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   652
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   653
  summary:     2
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   654
  
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   655
  changeset:   8:6b9e5368ca4e
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   656
  user:        bar
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   657
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   658
  summary:     1
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   659
  
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   660
  changeset:   9:1905859650ec
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   661
  user:        test
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   662
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   663
  summary:     5
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   664
  
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   665
  changeset:   10:52dc0b4c6907
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   666
  user:        test
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   667
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   668
  summary:     4
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   669
  
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   670
  changeset:   11:882b35362a6b
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   671
  user:        test
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   672
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   673
  summary:     3
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   674
  
24644
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   675
  changeset:   13:7a4785234d87
17186
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   676
  user:        foo
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   677
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   678
  summary:     2
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   679
  
30188
8a864844d5a0 checkcopies: add a sanity check against false-positive copies
Gábor Stefanik <gabor.stefanik@nng.com>
parents: 29975
diff changeset
   680
  changeset:   14:0c921c65ef1e
17186
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   681
  parent:      1:5d205f8b35b6
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   682
  user:        foo
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   683
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   684
  summary:     3
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   685
  
23463
bb0143e12f35 graft: use a real conflict for the tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 23167
diff changeset
   686
  changeset:   17:f67661df0c48
17186
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   687
  user:        bar
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   688
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   689
  summary:     1
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   690
  
23463
bb0143e12f35 graft: use a real conflict for the tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 23167
diff changeset
   691
  changeset:   19:9627f653b421
17186
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   692
  user:        test
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   693
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   694
  summary:     2
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   695
  
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   696
  changeset:   21:7e61b508e709
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   697
  branch:      dev
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   698
  tag:         tip
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   699
  user:        foo
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   700
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   701
  summary:     2
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   702
  
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   703
  $ hg log -r 'destination(2)'
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   704
  changeset:   7:ef0ef43d49e7
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   705
  parent:      0:68795b066622
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   706
  user:        foo
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   707
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   708
  summary:     2
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   709
  
24644
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   710
  changeset:   13:7a4785234d87
17186
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   711
  user:        foo
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   712
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   713
  summary:     2
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   714
  
23463
bb0143e12f35 graft: use a real conflict for the tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 23167
diff changeset
   715
  changeset:   19:9627f653b421
17186
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   716
  user:        test
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   717
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   718
  summary:     2
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   719
  
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   720
  changeset:   21:7e61b508e709
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   721
  branch:      dev
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   722
  tag:         tip
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   723
  user:        foo
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   724
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   725
  summary:     2
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   726
  
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   727
Transplants of grafts can find a destination...
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   728
  $ hg log -r 'destination(7)'
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   729
  changeset:   21:7e61b508e709
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   730
  branch:      dev
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   731
  tag:         tip
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   732
  user:        foo
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   733
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   734
  summary:     2
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   735
  
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   736
... 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
   737
  $ 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
   738
  scanning for duplicate grafts
46da52f4b820 commit: try hard to reuse p1 manifest if nothing changed
Yuya Nishihara <yuya@tcha.org>
parents: 38966
diff changeset
   739
  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
   740
    all copies found (* = to merge, ! = divergent, % = renamed and deleted):
44197
17e12938f8e7 copies: print debug information about copies per side/branch
Martin von Zweigbergk <martinvonz@google.com>
parents: 44091
diff changeset
   741
     on local side:
17e12938f8e7 copies: print debug information about copies per side/branch
Martin von Zweigbergk <martinvonz@google.com>
parents: 44091
diff changeset
   742
      src: 'a' -> dst: 'b' *
17e12938f8e7 copies: print debug information about copies per side/branch
Martin von Zweigbergk <martinvonz@google.com>
parents: 44091
diff changeset
   743
     on remote side:
17e12938f8e7 copies: print debug information about copies per side/branch
Martin von Zweigbergk <martinvonz@google.com>
parents: 44091
diff changeset
   744
      src: 'a' -> dst: 'b' *
42164
96bd75e67a94 copies: fix up "fullcopy" with missing entries from "copy"
Martin von Zweigbergk <martinvonz@google.com>
parents: 42161
diff changeset
   745
    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
   746
  resolving manifests
46da52f4b820 commit: try hard to reuse p1 manifest if nothing changed
Yuya Nishihara <yuya@tcha.org>
parents: 38966
diff changeset
   747
   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
   748
   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
   749
  starting 4 threads for background file closing (?)
44442
6306baa7d19a commit: print debug message when clearing dirstate and wdir clean
Martin von Zweigbergk <martinvonz@google.com>
parents: 44383
diff changeset
   750
  nothing to commit, clearing merge state
44091
3df0bd706c40 graftcopies: use _filter() for filtering out invalid copies
Martin von Zweigbergk <martinvonz@google.com>
parents: 44044
diff changeset
   751
  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
   752
  $ hg log -r 'destination(13)'
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   753
All copies of a cset
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   754
  $ hg log -r 'origin(13) or destination(origin(13))'
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   755
  changeset:   2:5c095ad7e90f
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   756
  user:        test
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   757
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   758
  summary:     2
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   759
  
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   760
  changeset:   7:ef0ef43d49e7
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   761
  parent:      0:68795b066622
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   762
  user:        foo
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   763
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   764
  summary:     2
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   765
  
24644
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   766
  changeset:   13:7a4785234d87
17186
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   767
  user:        foo
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   768
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   769
  summary:     2
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   770
  
23463
bb0143e12f35 graft: use a real conflict for the tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 23167
diff changeset
   771
  changeset:   19:9627f653b421
17186
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   772
  user:        test
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   773
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   774
  summary:     2
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   775
  
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   776
  changeset:   21:7e61b508e709
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   777
  branch:      dev
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   778
  tag:         tip
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   779
  user:        foo
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   780
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   781
  summary:     2
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   782
  
21200
a1381eea7c7d graft: do not use `.remove` on a smart set (regression)
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21082
diff changeset
   783
44044
f3ad014b6a53 tests: avoid grafting the same change over and over
Martin von Zweigbergk <martinvonz@google.com>
parents: 44041
diff changeset
   784
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
   785
44044
f3ad014b6a53 tests: avoid grafting the same change over and over
Martin von Zweigbergk <martinvonz@google.com>
parents: 44041
diff changeset
   786
  $ hg graft 21 3
23507
67045b5a903a graft: show hashes in user-facing messages
Mads Kiilerich <madski@unity3d.com>
parents: 23506
diff changeset
   787
  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
   788
  grafting 3:4c60f11aa304 "3"
f3ad014b6a53 tests: avoid grafting the same change over and over
Martin von Zweigbergk <martinvonz@google.com>
parents: 44041
diff changeset
   789
  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
   790
21979
c2863cfe8a8a graft: allow regrafting ancestors with --force (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21947
diff changeset
   791
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
   792
c2863cfe8a8a graft: allow regrafting ancestors with --force (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21947
diff changeset
   793
  $ hg graft 19 0 6
c2863cfe8a8a graft: allow regrafting ancestors with --force (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21947
diff changeset
   794
  skipping ungraftable merge revision 6
23507
67045b5a903a graft: show hashes in user-facing messages
Mads Kiilerich <madski@unity3d.com>
parents: 23506
diff changeset
   795
  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
   796
  grafting 19:9627f653b421 "2"
3df0bd706c40 graftcopies: use _filter() for filtering out invalid copies
Martin von Zweigbergk <martinvonz@google.com>
parents: 44044
diff changeset
   797
  merging b
3df0bd706c40 graftcopies: use _filter() for filtering out invalid copies
Martin von Zweigbergk <martinvonz@google.com>
parents: 44044
diff changeset
   798
  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
   799
  $ hg graft 19 0 6 --force
c2863cfe8a8a graft: allow regrafting ancestors with --force (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21947
diff changeset
   800
  skipping ungraftable merge revision 6
23505
bd5dbb8a05c8 graft: show more useful status information while grafting
Mads Kiilerich <madski@unity3d.com>
parents: 23504
diff changeset
   801
  grafting 19:9627f653b421 "2"
21979
c2863cfe8a8a graft: allow regrafting ancestors with --force (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21947
diff changeset
   802
  merging b
44091
3df0bd706c40 graftcopies: use _filter() for filtering out invalid copies
Martin von Zweigbergk <martinvonz@google.com>
parents: 44044
diff changeset
   803
  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
   804
  grafting 0:68795b066622 "0"
21979
c2863cfe8a8a graft: allow regrafting ancestors with --force (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21947
diff changeset
   805
44383
218feb1a7e00 graft: always allow hg graft --base . (issue6248)
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 44197
diff changeset
   806
graft --force after backout. Do the backout with graft too, to make
218feb1a7e00 graft: always allow hg graft --base . (issue6248)
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 44197
diff changeset
   807
sure we support issue6248.
21979
c2863cfe8a8a graft: allow regrafting ancestors with --force (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21947
diff changeset
   808
c2863cfe8a8a graft: allow regrafting ancestors with --force (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21947
diff changeset
   809
  $ echo abc > a
44091
3df0bd706c40 graftcopies: use _filter() for filtering out invalid copies
Martin von Zweigbergk <martinvonz@google.com>
parents: 44044
diff changeset
   810
  $ hg ci -m 24
44383
218feb1a7e00 graft: always allow hg graft --base . (issue6248)
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 44197
diff changeset
   811
  $ hg graft --base . -r ".^" --no-commit
218feb1a7e00 graft: always allow hg graft --base . (issue6248)
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 44197
diff changeset
   812
  grafting 23:b1cac6de36a9 "0"
218feb1a7e00 graft: always allow hg graft --base . (issue6248)
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 44197
diff changeset
   813
  $ hg commit -m 'Backed out changeset 2e7ea477be26'
44091
3df0bd706c40 graftcopies: use _filter() for filtering out invalid copies
Martin von Zweigbergk <martinvonz@google.com>
parents: 44044
diff changeset
   814
  $ hg graft 24
3df0bd706c40 graftcopies: use _filter() for filtering out invalid copies
Martin von Zweigbergk <martinvonz@google.com>
parents: 44044
diff changeset
   815
  skipping ancestor revision 24:2e7ea477be26
21979
c2863cfe8a8a graft: allow regrafting ancestors with --force (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21947
diff changeset
   816
  [255]
44091
3df0bd706c40 graftcopies: use _filter() for filtering out invalid copies
Martin von Zweigbergk <martinvonz@google.com>
parents: 44044
diff changeset
   817
  $ hg graft 24 --force
3df0bd706c40 graftcopies: use _filter() for filtering out invalid copies
Martin von Zweigbergk <martinvonz@google.com>
parents: 44044
diff changeset
   818
  grafting 24:2e7ea477be26 "24"
21979
c2863cfe8a8a graft: allow regrafting ancestors with --force (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21947
diff changeset
   819
  merging a
c2863cfe8a8a graft: allow regrafting ancestors with --force (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21947
diff changeset
   820
  $ cat a
c2863cfe8a8a graft: allow regrafting ancestors with --force (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21947
diff changeset
   821
  abc
c2863cfe8a8a graft: allow regrafting ancestors with --force (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21947
diff changeset
   822
21980
f4e5753745e9 graft: make --force apply across continues (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21979
diff changeset
   823
graft --continue after --force
f4e5753745e9 graft: make --force apply across continues (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21979
diff changeset
   824
23463
bb0143e12f35 graft: use a real conflict for the tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 23167
diff changeset
   825
  $ echo def > a
44091
3df0bd706c40 graftcopies: use _filter() for filtering out invalid copies
Martin von Zweigbergk <martinvonz@google.com>
parents: 44044
diff changeset
   826
  $ hg ci -m 27
3df0bd706c40 graftcopies: use _filter() for filtering out invalid copies
Martin von Zweigbergk <martinvonz@google.com>
parents: 44044
diff changeset
   827
  $ 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
   828
  grafting 24:2e7ea477be26 "24"
21980
f4e5753745e9 graft: make --force apply across continues (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21979
diff changeset
   829
  abort: unresolved conflicts, can't continue
28963
fc1d75e7a98d graft: use single quotes around command hint
timeless <timeless@mozdev.org>
parents: 28634
diff changeset
   830
  (use 'hg resolve' and 'hg graft --continue')
44725
16c361152133 graft: exit 1 on conflicts, like merge
Valentin Gatien-Baron <vgatien-baron@janestreet.com>
parents: 44442
diff changeset
   831
  [1]
21980
f4e5753745e9 graft: make --force apply across continues (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21979
diff changeset
   832
  $ hg resolve --all
f4e5753745e9 graft: make --force apply across continues (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21979
diff changeset
   833
  merging a
26614
ef1eb6df7071 simplemerge: move conflict warning message to filemerge
Siddharth Agarwal <sid0@fb.com>
parents: 26611
diff changeset
   834
  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
   835
  [1]
bb0143e12f35 graft: use a real conflict for the tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 23167
diff changeset
   836
  $ echo abc > a
bb0143e12f35 graft: use a real conflict for the tests
Martin von Zweigbergk <martinvonz@google.com>
parents: 23167
diff changeset
   837
  $ hg resolve -m a
21980
f4e5753745e9 graft: make --force apply across continues (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21979
diff changeset
   838
  (no more unresolved files)
27625
cdb9493a7e2f graft: hook afterresolvedstates
timeless <timeless@mozdev.org>
parents: 27173
diff changeset
   839
  continue: hg graft --continue
21980
f4e5753745e9 graft: make --force apply across continues (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21979
diff changeset
   840
  $ hg graft -c
44091
3df0bd706c40 graftcopies: use _filter() for filtering out invalid copies
Martin von Zweigbergk <martinvonz@google.com>
parents: 44044
diff changeset
   841
  grafting 24:2e7ea477be26 "24"
21980
f4e5753745e9 graft: make --force apply across continues (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21979
diff changeset
   842
  $ cat a
f4e5753745e9 graft: make --force apply across continues (issue3220)
Siddharth Agarwal <sid0@fb.com>
parents: 21979
diff changeset
   843
  abc
22302
9472284df4eb graft: fix collision detection with origin revisions that are missing
Mads Kiilerich <madski@unity3d.com>
parents: 21947
diff changeset
   844
44906
e5043679bfcc graft-state: save --base in graft's state, fixing bug with graft --continue
Charles Chamberlain <cchamberlain@janestreet.com>
parents: 44725
diff changeset
   845
graft --continue after --base with conflits
e5043679bfcc graft-state: save --base in graft's state, fixing bug with graft --continue
Charles Chamberlain <cchamberlain@janestreet.com>
parents: 44725
diff changeset
   846
e5043679bfcc graft-state: save --base in graft's state, fixing bug with graft --continue
Charles Chamberlain <cchamberlain@janestreet.com>
parents: 44725
diff changeset
   847
  $ echo base > d
e5043679bfcc graft-state: save --base in graft's state, fixing bug with graft --continue
Charles Chamberlain <cchamberlain@janestreet.com>
parents: 44725
diff changeset
   848
  $ hg ci -m _
e5043679bfcc graft-state: save --base in graft's state, fixing bug with graft --continue
Charles Chamberlain <cchamberlain@janestreet.com>
parents: 44725
diff changeset
   849
  $ hg graft -r 6
e5043679bfcc graft-state: save --base in graft's state, fixing bug with graft --continue
Charles Chamberlain <cchamberlain@janestreet.com>
parents: 44725
diff changeset
   850
  skipping ungraftable merge revision 6
e5043679bfcc graft-state: save --base in graft's state, fixing bug with graft --continue
Charles Chamberlain <cchamberlain@janestreet.com>
parents: 44725
diff changeset
   851
  [255]
e5043679bfcc graft-state: save --base in graft's state, fixing bug with graft --continue
Charles Chamberlain <cchamberlain@janestreet.com>
parents: 44725
diff changeset
   852
  $ hg graft -r 6 --base 5
e5043679bfcc graft-state: save --base in graft's state, fixing bug with graft --continue
Charles Chamberlain <cchamberlain@janestreet.com>
parents: 44725
diff changeset
   853
  grafting 6:25a2b029d3ae "6"
e5043679bfcc graft-state: save --base in graft's state, fixing bug with graft --continue
Charles Chamberlain <cchamberlain@janestreet.com>
parents: 44725
diff changeset
   854
  merging d
48427
38941a28406a mergestate: merge `preresolve()` into `resolve()`
Martin von Zweigbergk <martinvonz@google.com>
parents: 46650
diff changeset
   855
  warning: conflicts while merging d! (edit, then use 'hg resolve --mark')
44906
e5043679bfcc graft-state: save --base in graft's state, fixing bug with graft --continue
Charles Chamberlain <cchamberlain@janestreet.com>
parents: 44725
diff changeset
   856
  merging e
e5043679bfcc graft-state: save --base in graft's state, fixing bug with graft --continue
Charles Chamberlain <cchamberlain@janestreet.com>
parents: 44725
diff changeset
   857
  abort: unresolved conflicts, can't continue
e5043679bfcc graft-state: save --base in graft's state, fixing bug with graft --continue
Charles Chamberlain <cchamberlain@janestreet.com>
parents: 44725
diff changeset
   858
  (use 'hg resolve' and 'hg graft --continue')
e5043679bfcc graft-state: save --base in graft's state, fixing bug with graft --continue
Charles Chamberlain <cchamberlain@janestreet.com>
parents: 44725
diff changeset
   859
  [1]
e5043679bfcc graft-state: save --base in graft's state, fixing bug with graft --continue
Charles Chamberlain <cchamberlain@janestreet.com>
parents: 44725
diff changeset
   860
  $ echo a > d && hg resolve -qm
e5043679bfcc graft-state: save --base in graft's state, fixing bug with graft --continue
Charles Chamberlain <cchamberlain@janestreet.com>
parents: 44725
diff changeset
   861
  continue: hg graft --continue
e5043679bfcc graft-state: save --base in graft's state, fixing bug with graft --continue
Charles Chamberlain <cchamberlain@janestreet.com>
parents: 44725
diff changeset
   862
  $ hg graft --continue
e5043679bfcc graft-state: save --base in graft's state, fixing bug with graft --continue
Charles Chamberlain <cchamberlain@janestreet.com>
parents: 44725
diff changeset
   863
  grafting 6:25a2b029d3ae "6"
e5043679bfcc graft-state: save --base in graft's state, fixing bug with graft --continue
Charles Chamberlain <cchamberlain@janestreet.com>
parents: 44725
diff changeset
   864
22302
9472284df4eb graft: fix collision detection with origin revisions that are missing
Mads Kiilerich <madski@unity3d.com>
parents: 21947
diff changeset
   865
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
   866
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
   867
9472284df4eb graft: fix collision detection with origin revisions that are missing
Mads Kiilerich <madski@unity3d.com>
parents: 21947
diff changeset
   868
  $ hg up -qC 7
9472284df4eb graft: fix collision detection with origin revisions that are missing
Mads Kiilerich <madski@unity3d.com>
parents: 21947
diff changeset
   869
  $ 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
   870
  $ 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
   871
  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
   872
  $ hg graft tmp
24644
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   873
  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
   874
  [255]
23504
e172a1f2b5bb tests: test coverage for empty graft
Mads Kiilerich <madski@unity3d.com>
parents: 23482
diff changeset
   875
e172a1f2b5bb tests: test coverage for empty graft
Mads Kiilerich <madski@unity3d.com>
parents: 23482
diff changeset
   876
Empty graft
e172a1f2b5bb tests: test coverage for empty graft
Mads Kiilerich <madski@unity3d.com>
parents: 23482
diff changeset
   877
44091
3df0bd706c40 graftcopies: use _filter() for filtering out invalid copies
Martin von Zweigbergk <martinvonz@google.com>
parents: 44044
diff changeset
   878
  $ hg up -qr 22
23504
e172a1f2b5bb tests: test coverage for empty graft
Mads Kiilerich <madski@unity3d.com>
parents: 23482
diff changeset
   879
  $ hg tag -f something
44091
3df0bd706c40 graftcopies: use _filter() for filtering out invalid copies
Martin von Zweigbergk <martinvonz@google.com>
parents: 44044
diff changeset
   880
  $ hg graft -qr 23
3df0bd706c40 graftcopies: use _filter() for filtering out invalid copies
Martin von Zweigbergk <martinvonz@google.com>
parents: 44044
diff changeset
   881
  $ hg graft -f 23
3df0bd706c40 graftcopies: use _filter() for filtering out invalid copies
Martin von Zweigbergk <martinvonz@google.com>
parents: 44044
diff changeset
   882
  grafting 23:72d9c7c75bcc "24"
3df0bd706c40 graftcopies: use _filter() for filtering out invalid copies
Martin von Zweigbergk <martinvonz@google.com>
parents: 44044
diff changeset
   883
  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
   884
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   885
  $ cd ..
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   886
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   887
Graft to duplicate a commit
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
  $ hg init graftsibling
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   890
  $ cd graftsibling
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   891
  $ touch a
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   892
  $ hg commit -qAm a
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   893
  $ touch b
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   894
  $ hg commit -qAm b
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   895
  $ hg log -G -T '{rev}\n'
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   896
  @  1
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   897
  |
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   898
  o  0
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   899
  
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   900
  $ hg up -q 0
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   901
  $ hg graft -r 1
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   902
  grafting 1:0e067c57feba "b" (tip)
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   903
  $ hg log -G -T '{rev}\n'
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   904
  @  2
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   905
  |
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   906
  | o  1
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   907
  |/
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   908
  o  0
a8e6897dffbe graft: allow creating sibling grafts
Durham Goode <durham@fb.com>
parents: 23929
diff changeset
   909
  
24644
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   910
Graft to duplicate a commit twice
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   911
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   912
  $ hg up -q 0
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   913
  $ hg graft -r 2
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   914
  grafting 2:044ec77f6389 "b" (tip)
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   915
  $ hg log -G -T '{rev}\n'
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   916
  @  3
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   917
  |
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   918
  | o  2
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   919
  |/
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   920
  | o  1
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   921
  |/
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   922
  o  0
51930a7180bd graft: record intermediate grafts in extras
Durham Goode <durham@fb.com>
parents: 24643
diff changeset
   923