tests/test-graft.t
author smuralid
Thu, 13 Sep 2012 23:50:45 -0700
changeset 17746 6d218e47cf9b
parent 17186 a3da6f298592
child 18135 a6fe1b9cc68f
permissions -rw-r--r--
log: speed up hg log for untracked files (issue1340) 'hg log' on untracked files tends to be fairly slow. The root cause is that we end up using the 'slowpath' when we can't find a revlog for the files listed. This could happen if the file in question is an untracked file, or it is a directory. This diff tries to speed up 'hg log' (by avoiding the slowpath) for files if we can determine if that file is not (and was never) a directory. We use the previously added store.__contains__ methods to test if the directory exists (or existed) in the store. To avoid changing any existing semantics, this 'optimization' kicks in only when none of the files listed as arguments to the hg log command exist in the store.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
     1
Create a repo with some stuff in it:
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
     2
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
     3
  $ hg init a
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
     4
  $ cd a
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
     5
  $ echo a > a
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
     6
  $ echo a > d
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
     7
  $ echo a > e
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
     8
  $ hg ci -qAm0
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
     9
  $ echo b > a
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    10
  $ hg ci -m1 -u bar
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    11
  $ hg mv a b
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    12
  $ hg ci -m2
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    13
  $ hg cp b c
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    14
  $ hg ci -m3 -u baz
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    15
  $ echo b > d
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    16
  $ echo f > e
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    17
  $ hg ci -m4
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    18
  $ hg up -q 3
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    19
  $ echo b > e
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    20
  $ hg branch -q stable
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    21
  $ hg ci -m5
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    22
  $ hg merge -q default --tool internal:local
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    23
  $ hg branch -q default
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    24
  $ 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
    25
  $ 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
    26
  $ 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
    27
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
    28
  $ hg --config extensions.graphlog= log -G --template '{author}@{rev}.{phase}: {desc}\n'
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
    29
  @    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
    30
  |\
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
    31
  | 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
    32
  | |
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
    33
  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
    34
  |/
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
    35
  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
    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@2.public: 2
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  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
    40
  |
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
    41
  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
    42
  
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    43
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    44
Need to specify a rev:
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    45
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    46
  $ hg graft
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    47
  abort: no revisions specified
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    48
  [255]
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    49
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    50
Can't graft ancestor:
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    51
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    52
  $ hg graft 1 2
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    53
  skipping ancestor revision 1
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    54
  skipping ancestor revision 2
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    55
  [255]
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    56
16992
55e7f352b1d3 graft: allow -r to specify revisions
Thomas Arendsen Hein <thomas@intevation.de>
parents: 16913
diff changeset
    57
Specify revisions with -r:
55e7f352b1d3 graft: allow -r to specify revisions
Thomas Arendsen Hein <thomas@intevation.de>
parents: 16913
diff changeset
    58
55e7f352b1d3 graft: allow -r to specify revisions
Thomas Arendsen Hein <thomas@intevation.de>
parents: 16913
diff changeset
    59
  $ hg graft -r 1 -r 2
55e7f352b1d3 graft: allow -r to specify revisions
Thomas Arendsen Hein <thomas@intevation.de>
parents: 16913
diff changeset
    60
  skipping ancestor revision 1
55e7f352b1d3 graft: allow -r to specify revisions
Thomas Arendsen Hein <thomas@intevation.de>
parents: 16913
diff changeset
    61
  skipping ancestor revision 2
55e7f352b1d3 graft: allow -r to specify revisions
Thomas Arendsen Hein <thomas@intevation.de>
parents: 16913
diff changeset
    62
  [255]
55e7f352b1d3 graft: allow -r to specify revisions
Thomas Arendsen Hein <thomas@intevation.de>
parents: 16913
diff changeset
    63
55e7f352b1d3 graft: allow -r to specify revisions
Thomas Arendsen Hein <thomas@intevation.de>
parents: 16913
diff changeset
    64
  $ hg graft -r 1 2
55e7f352b1d3 graft: allow -r to specify revisions
Thomas Arendsen Hein <thomas@intevation.de>
parents: 16913
diff changeset
    65
  skipping ancestor revision 2
55e7f352b1d3 graft: allow -r to specify revisions
Thomas Arendsen Hein <thomas@intevation.de>
parents: 16913
diff changeset
    66
  skipping ancestor revision 1
55e7f352b1d3 graft: allow -r to specify revisions
Thomas Arendsen Hein <thomas@intevation.de>
parents: 16913
diff changeset
    67
  [255]
55e7f352b1d3 graft: allow -r to specify revisions
Thomas Arendsen Hein <thomas@intevation.de>
parents: 16913
diff changeset
    68
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    69
Can't graft with dirty wd:
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    70
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    71
  $ hg up -q 0
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    72
  $ echo foo > a
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    73
  $ hg graft 1
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    74
  abort: outstanding uncommitted changes
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    75
  [255]
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    76
  $ hg revert a
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    77
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    78
Graft a rename:
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    79
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    80
  $ hg graft 2 -u foo
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    81
  grafting revision 2
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    82
  merging a and b to b
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    83
  $ hg export tip --git
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    84
  # HG changeset patch
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    85
  # User foo
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    86
  # Date 0 0
16601
0c98820be15c filectx: handle some other simple cases for finding merge ancestor
Matt Mackall <mpm@selenic.com>
parents: 16600
diff changeset
    87
  # Node ID ef0ef43d49e79e81ddafdc7997401ba0041efc82
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    88
  # Parent  68795b066622ca79a25816a662041d8f78f3cd9e
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    89
  2
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
  diff --git a/a b/b
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    92
  rename from a
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    93
  rename to b
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    94
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    95
Look for extra:source
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
  $ 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
    98
  changeset:   7:ef0ef43d49e79e81ddafdc7997401ba0041efc82
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    99
  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
   100
  phase:       draft
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   101
  parent:      0:68795b066622ca79a25816a662041d8f78f3cd9e
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   102
  parent:      -1:0000000000000000000000000000000000000000
16601
0c98820be15c filectx: handle some other simple cases for finding merge ancestor
Matt Mackall <mpm@selenic.com>
parents: 16600
diff changeset
   103
  manifest:    7:e59b6b228f9cbf9903d5e9abf996e083a1f533eb
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   104
  user:        foo
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   105
  date:        Thu Jan 01 00:00:00 1970 +0000
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   106
  files+:      b
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   107
  files-:      a
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   108
  extra:       branch=default
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   109
  extra:       source=5c095ad7e90f871700f02dd1fa5012cb4498a2d4
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   110
  description:
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   111
  2
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   112
  
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   113
  
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   114
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   115
Graft out of order, skipping a merge and a duplicate
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   116
16389
79fecd735d26 graft: add --dry-run support (issue3362)
Matt Mackall <mpm@selenic.com>
parents: 16094
diff changeset
   117
  $ 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
   118
  skipping ungraftable merge revision 6
79fecd735d26 graft: add --dry-run support (issue3362)
Matt Mackall <mpm@selenic.com>
parents: 16094
diff changeset
   119
  skipping already grafted revision 2
79fecd735d26 graft: add --dry-run support (issue3362)
Matt Mackall <mpm@selenic.com>
parents: 16094
diff changeset
   120
  grafting revision 1
79fecd735d26 graft: add --dry-run support (issue3362)
Matt Mackall <mpm@selenic.com>
parents: 16094
diff changeset
   121
  grafting revision 5
79fecd735d26 graft: add --dry-run support (issue3362)
Matt Mackall <mpm@selenic.com>
parents: 16094
diff changeset
   122
  grafting revision 4
79fecd735d26 graft: add --dry-run support (issue3362)
Matt Mackall <mpm@selenic.com>
parents: 16094
diff changeset
   123
  grafting revision 3
79fecd735d26 graft: add --dry-run support (issue3362)
Matt Mackall <mpm@selenic.com>
parents: 16094
diff changeset
   124
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   125
  $ hg graft 1 5 4 3 'merge()' 2 --debug
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   126
  skipping ungraftable merge revision 6
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   127
  scanning for duplicate grafts
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   128
  skipping already grafted revision 2
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   129
  grafting revision 1
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   130
    searching for copies back to rev 1
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   131
    unmatched files in local:
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   132
     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
   133
    all copies found (* = to merge, ! = divergent, % = renamed and deleted):
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   134
     b -> a *
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   135
    checking for directory renames
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   136
  resolving manifests
15625
efdcce3fd2d5 merge: make debug output easier to read
Martin Geisler <mg@aragost.com>
parents: 15513
diff changeset
   137
   overwrite: False, partial: False
16601
0c98820be15c filectx: handle some other simple cases for finding merge ancestor
Matt Mackall <mpm@selenic.com>
parents: 16600
diff changeset
   138
   ancestor: 68795b066622, local: ef0ef43d49e7+, remote: 5d205f8b35b6
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   139
   b: local copied/moved to a -> m
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   140
  preserving b for resolve of b
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   141
  updating: b 1/1 files (100.00%)
16601
0c98820be15c filectx: handle some other simple cases for finding merge ancestor
Matt Mackall <mpm@selenic.com>
parents: 16600
diff changeset
   142
  picked tool 'internal:merge' for b (binary False symlink False)
0c98820be15c filectx: handle some other simple cases for finding merge ancestor
Matt Mackall <mpm@selenic.com>
parents: 16600
diff changeset
   143
  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
   144
  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
   145
   premerge successful
0c98820be15c filectx: handle some other simple cases for finding merge ancestor
Matt Mackall <mpm@selenic.com>
parents: 16600
diff changeset
   146
  b
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   147
  grafting revision 5
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   148
    searching for copies back to rev 1
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   149
  resolving manifests
15625
efdcce3fd2d5 merge: make debug output easier to read
Martin Geisler <mg@aragost.com>
parents: 15513
diff changeset
   150
   overwrite: False, partial: False
16601
0c98820be15c filectx: handle some other simple cases for finding merge ancestor
Matt Mackall <mpm@selenic.com>
parents: 16600
diff changeset
   151
   ancestor: 4c60f11aa304, local: 6b9e5368ca4e+, remote: 97f8bfe72746
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   152
   e: remote is newer -> g
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   153
  updating: e 1/1 files (100.00%)
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   154
  getting e
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   155
  e
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   156
  grafting revision 4
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   157
    searching for copies back to rev 1
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   158
  resolving manifests
15625
efdcce3fd2d5 merge: make debug output easier to read
Martin Geisler <mg@aragost.com>
parents: 15513
diff changeset
   159
   overwrite: False, partial: False
16601
0c98820be15c filectx: handle some other simple cases for finding merge ancestor
Matt Mackall <mpm@selenic.com>
parents: 16600
diff changeset
   160
   ancestor: 4c60f11aa304, local: 1905859650ec+, remote: 9c233e8e184d
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   161
   e: versions differ -> m
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   162
   d: remote is newer -> g
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   163
  preserving e for resolve of e
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   164
  updating: d 1/2 files (50.00%)
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   165
  getting d
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   166
  updating: e 2/2 files (100.00%)
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   167
  picked tool 'internal:merge' for e (binary False symlink False)
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   168
  merging e
16601
0c98820be15c filectx: handle some other simple cases for finding merge ancestor
Matt Mackall <mpm@selenic.com>
parents: 16600
diff changeset
   169
  my e@1905859650ec+ other e@9c233e8e184d ancestor e@68795b066622
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   170
  warning: conflicts during merge.
15501
2371f4aea665 merge: give a special message for internal:merge failure (issue3105)
Matt Mackall <mpm@selenic.com>
parents: 15361
diff changeset
   171
  merging e incomplete! (edit conflicts, then use 'hg resolve --mark')
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   172
  abort: unresolved conflicts, can't continue
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   173
  (use hg resolve and hg graft --continue)
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   174
  [255]
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   175
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   176
Continue without resolve should fail:
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   177
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   178
  $ hg graft -c
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   179
  grafting revision 4
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   180
  abort: unresolved merge conflicts (see hg help resolve)
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   181
  [255]
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   182
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   183
Fix up:
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   184
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   185
  $ echo b > e
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   186
  $ hg resolve -m e
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
Continue with a revision should fail:
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   189
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   190
  $ hg graft -c 6
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   191
  abort: can't specify --continue and revisions
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   192
  [255]
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   193
16992
55e7f352b1d3 graft: allow -r to specify revisions
Thomas Arendsen Hein <thomas@intevation.de>
parents: 16913
diff changeset
   194
  $ hg graft -c -r 6
55e7f352b1d3 graft: allow -r to specify revisions
Thomas Arendsen Hein <thomas@intevation.de>
parents: 16913
diff changeset
   195
  abort: can't specify --continue and revisions
55e7f352b1d3 graft: allow -r to specify revisions
Thomas Arendsen Hein <thomas@intevation.de>
parents: 16913
diff changeset
   196
  [255]
55e7f352b1d3 graft: allow -r to specify revisions
Thomas Arendsen Hein <thomas@intevation.de>
parents: 16913
diff changeset
   197
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   198
Continue for real, clobber usernames
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   199
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   200
  $ hg graft -c -U
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   201
  grafting revision 4
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   202
  grafting revision 3
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   203
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   204
Compare with original:
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   205
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   206
  $ hg diff -r 6
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   207
  $ hg status --rev 0:. -C
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   208
  M d
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   209
  M e
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   210
  A b
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   211
    a
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   212
  A c
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   213
    a
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   214
  R a
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   215
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   216
View graph:
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   217
15918
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
   218
  $ hg --config extensions.graphlog= 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
   219
  @  test@11.draft: 3
0c98820be15c filectx: handle some other simple cases for finding merge ancestor
Matt Mackall <mpm@selenic.com>
parents: 16600
diff changeset
   220
  |
0c98820be15c filectx: handle some other simple cases for finding merge ancestor
Matt Mackall <mpm@selenic.com>
parents: 16600
diff changeset
   221
  o  test@10.draft: 4
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   222
  |
16601
0c98820be15c filectx: handle some other simple cases for finding merge ancestor
Matt Mackall <mpm@selenic.com>
parents: 16600
diff changeset
   223
  o  test@9.draft: 5
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   224
  |
16601
0c98820be15c filectx: handle some other simple cases for finding merge ancestor
Matt Mackall <mpm@selenic.com>
parents: 16600
diff changeset
   225
  o  bar@8.draft: 1
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   226
  |
15918
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
   227
  o  foo@7.draft: 2
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   228
  |
15918
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
   229
  | o    test@6.secret: 6
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   230
  | |\
15918
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
   231
  | | o  test@5.draft: 5
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   232
  | | |
15918
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
   233
  | o |  test@4.draft: 4
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   234
  | |/
15918
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
   235
  | o  baz@3.public: 3
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   236
  | |
15918
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
   237
  | o  test@2.public: 2
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   238
  | |
15918
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
   239
  | o  bar@1.public: 1
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   240
  |/
15918
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
   241
  o  test@0.public: 0
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
   242
  
15506
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   243
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
   244
  $ hg up -q 0
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   245
  $ echo 'g'>g
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   246
  $ hg add g
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   247
  $ hg ci -m 7
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   248
  created new head
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   249
  $ hg graft 7
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   250
  grafting revision 7
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   251
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   252
  $ 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
   253
  7:ef0ef43d49e79e81ddafdc7997401ba0041efc82
15506
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   254
  $ 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
   255
  2:5c095ad7e90f871700f02dd1fa5012cb4498a2d4
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   256
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   257
  $ 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
   258
  changeset:   13:9db0f28fd3747e92c57d015f53b5593aeec53c2d
15506
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   259
  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
   260
  phase:       draft
16601
0c98820be15c filectx: handle some other simple cases for finding merge ancestor
Matt Mackall <mpm@selenic.com>
parents: 16600
diff changeset
   261
  parent:      12:b592ea63bb0c19a6c5c44685ee29a2284f9f1b8f
15506
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   262
  parent:      -1:0000000000000000000000000000000000000000
16601
0c98820be15c filectx: handle some other simple cases for finding merge ancestor
Matt Mackall <mpm@selenic.com>
parents: 16600
diff changeset
   263
  manifest:    13:dc313617b8c32457c0d589e0dbbedfe71f3cd637
15506
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   264
  user:        foo
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   265
  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
   266
  files+:      b
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   267
  files-:      a
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   268
  extra:       branch=default
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   269
  extra:       source=5c095ad7e90f871700f02dd1fa5012cb4498a2d4
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   270
  description:
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   271
  2
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   272
  
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
   273
  
15508
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
   274
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
   275
  $ hg up -q 6
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
   276
  $ hg graft 7
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
   277
  skipping already grafted revision 7 (was grafted from 2)
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
   278
  [255]
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
   279
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
   280
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
   281
  $ 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
   282
  $ hg graft 2
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
   283
  skipping already grafted revision 2
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
   284
  [255]
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
   285
  $ hg graft 7
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
   286
  skipping already grafted revision 7 (same origin 2)
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
   287
  [255]
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
   288
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
   289
  $ hg up -q 7
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
   290
  $ hg graft 2
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
   291
  skipping already grafted revision 2
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
   292
  [255]
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
   293
  $ hg graft tip
16601
0c98820be15c filectx: handle some other simple cases for finding merge ancestor
Matt Mackall <mpm@selenic.com>
parents: 16600
diff changeset
   294
  skipping already grafted revision 13 (same origin 2)
15508
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
   295
  [255]
17045
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   296
16660
2a71cc53f244 graft: implement --log (issue3438)
Levi Bard <levi@unity3d.com>
parents: 16601
diff changeset
   297
Graft with --log
2a71cc53f244 graft: implement --log (issue3438)
Levi Bard <levi@unity3d.com>
parents: 16601
diff changeset
   298
2a71cc53f244 graft: implement --log (issue3438)
Levi Bard <levi@unity3d.com>
parents: 16601
diff changeset
   299
  $ hg up -Cq 1
2a71cc53f244 graft: implement --log (issue3438)
Levi Bard <levi@unity3d.com>
parents: 16601
diff changeset
   300
  $ hg graft 3 --log -u foo
2a71cc53f244 graft: implement --log (issue3438)
Levi Bard <levi@unity3d.com>
parents: 16601
diff changeset
   301
  grafting revision 3
2a71cc53f244 graft: implement --log (issue3438)
Levi Bard <levi@unity3d.com>
parents: 16601
diff changeset
   302
  warning: can't find ancestor for 'c' copied from 'b'!
2a71cc53f244 graft: implement --log (issue3438)
Levi Bard <levi@unity3d.com>
parents: 16601
diff changeset
   303
  $ hg log --template '{rev} {parents} {desc}\n' -r tip
2a71cc53f244 graft: implement --log (issue3438)
Levi Bard <levi@unity3d.com>
parents: 16601
diff changeset
   304
  14 1:5d205f8b35b6  3
2a71cc53f244 graft: implement --log (issue3438)
Levi Bard <levi@unity3d.com>
parents: 16601
diff changeset
   305
  (grafted from 4c60f11aa304a54ae1c199feb94e7fc771e51ed8)
16913
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 16795
diff changeset
   306
17045
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   307
Resolve conflicted graft
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   308
  $ 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
   309
  $ echo b > a
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   310
  $ 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
   311
  created new head
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   312
  $ echo a > a
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   313
  $ 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
   314
  $ hg graft 1 --tool internal:fail
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   315
  grafting revision 1
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   316
  abort: unresolved conflicts, can't continue
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   317
  (use hg resolve and hg graft --continue)
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   318
  [255]
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   319
  $ hg resolve --all
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   320
  merging a
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   321
  $ hg graft -c
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   322
  grafting revision 1
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   323
  $ 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
   324
  # HG changeset patch
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   325
  # User bar
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   326
  # Date 0 0
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   327
  # Node ID 64ecd9071ce83c6e62f538d8ce7709d53f32ebf7
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   328
  # Parent  4bdb9a9d0b84ffee1d30f0dfc7744cade17aa19c
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   329
  1
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   330
  
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   331
  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
   332
  --- a/a
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   333
  +++ b/a
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   334
  @@ -1,1 +1,1 @@
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   335
  -a
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   336
  +b
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   337
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   338
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
   339
  $ echo c > a
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   340
  $ 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
   341
  $ hg graft 2 --tool internal:fail
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   342
  grafting revision 2
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   343
  abort: unresolved conflicts, can't continue
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   344
  (use hg resolve and hg graft --continue)
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   345
  [255]
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   346
  $ hg resolve --all
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   347
  merging a and b to b
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   348
  $ hg graft -c
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   349
  grafting revision 2
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   350
  $ 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
   351
  # HG changeset patch
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   352
  # User test
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   353
  # Date 0 0
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   354
  # Node ID 2e80e1351d6ed50302fe1e05f8bd1d4d412b6e11
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   355
  # Parent  e5a51ae854a8bbaaf25cc5c6a57ff46042dadbb4
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   356
  2
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   357
  
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   358
  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
   359
  rename from a
52ea9ce5b641 graft: don't drop the second parent on unsuccessful merge (issue3498)
Yuya Nishihara <yuya@tcha.org>
parents: 16509
diff changeset
   360
  rename to b
17185
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   361
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   362
Test simple origin(), with and without args
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   363
  $ hg log -r 'origin()'
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   364
  changeset:   1:5d205f8b35b6
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   365
  user:        bar
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   366
  date:        Thu Jan 01 00:00:00 1970 +0000
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   367
  summary:     1
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   368
  
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   369
  changeset:   2:5c095ad7e90f
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   370
  user:        test
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   371
  date:        Thu Jan 01 00:00:00 1970 +0000
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   372
  summary:     2
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   373
  
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   374
  changeset:   3:4c60f11aa304
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   375
  user:        baz
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   376
  date:        Thu Jan 01 00:00:00 1970 +0000
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   377
  summary:     3
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   378
  
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   379
  changeset:   4:9c233e8e184d
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   380
  user:        test
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   381
  date:        Thu Jan 01 00:00:00 1970 +0000
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   382
  summary:     4
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   383
  
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   384
  changeset:   5:97f8bfe72746
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   385
  branch:      stable
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   386
  parent:      3:4c60f11aa304
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   387
  user:        test
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   388
  date:        Thu Jan 01 00:00:00 1970 +0000
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   389
  summary:     5
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   390
  
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   391
  $ hg log -r 'origin(7)'
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   392
  changeset:   2:5c095ad7e90f
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   393
  user:        test
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   394
  date:        Thu Jan 01 00:00:00 1970 +0000
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   395
  summary:     2
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   396
  
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   397
Now transplant a graft to test following through copies
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   398
  $ hg up -q 0
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   399
  $ hg branch -q dev
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   400
  $ hg ci -qm "dev branch"
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   401
  $ hg --config extensions.transplant= transplant -q 7
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   402
  $ hg log -r 'origin(.)'
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   403
  changeset:   2:5c095ad7e90f
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   404
  user:        test
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   405
  date:        Thu Jan 01 00:00:00 1970 +0000
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   406
  summary:     2
2c7c4824969e revset: add origin() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17059
diff changeset
   407
  
17186
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   408
Test simple destination
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   409
  $ hg log -r 'destination()'
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   410
  changeset:   7:ef0ef43d49e7
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   411
  parent:      0:68795b066622
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   412
  user:        foo
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   413
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   414
  summary:     2
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   415
  
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   416
  changeset:   8:6b9e5368ca4e
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   417
  user:        bar
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   418
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   419
  summary:     1
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   420
  
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   421
  changeset:   9:1905859650ec
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   422
  user:        test
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   423
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   424
  summary:     5
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   425
  
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   426
  changeset:   10:52dc0b4c6907
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   427
  user:        test
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   428
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   429
  summary:     4
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   430
  
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   431
  changeset:   11:882b35362a6b
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   432
  user:        test
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   433
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   434
  summary:     3
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   435
  
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   436
  changeset:   13:9db0f28fd374
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   437
  user:        foo
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   438
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   439
  summary:     2
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   440
  
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   441
  changeset:   14:f64defefacee
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   442
  parent:      1:5d205f8b35b6
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   443
  user:        foo
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   444
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   445
  summary:     3
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   446
  
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   447
  changeset:   17:64ecd9071ce8
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   448
  user:        bar
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   449
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   450
  summary:     1
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   451
  
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   452
  changeset:   19:2e80e1351d6e
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   453
  user:        test
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   454
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   455
  summary:     2
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   456
  
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   457
  changeset:   21:7e61b508e709
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   458
  branch:      dev
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   459
  tag:         tip
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   460
  user:        foo
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   461
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   462
  summary:     2
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   463
  
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   464
  $ hg log -r 'destination(2)'
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   465
  changeset:   7:ef0ef43d49e7
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   466
  parent:      0:68795b066622
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   467
  user:        foo
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   468
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   469
  summary:     2
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   470
  
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   471
  changeset:   13:9db0f28fd374
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   472
  user:        foo
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   473
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   474
  summary:     2
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   475
  
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   476
  changeset:   19:2e80e1351d6e
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   477
  user:        test
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   478
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   479
  summary:     2
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   480
  
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   481
  changeset:   21:7e61b508e709
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   482
  branch:      dev
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   483
  tag:         tip
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   484
  user:        foo
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   485
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   486
  summary:     2
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   487
  
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   488
Transplants of grafts can find a destination...
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   489
  $ hg log -r 'destination(7)'
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   490
  changeset:   21:7e61b508e709
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   491
  branch:      dev
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   492
  tag:         tip
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   493
  user:        foo
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   494
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   495
  summary:     2
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   496
  
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   497
... grafts of grafts unfortunately can't
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   498
  $ hg graft -q 13
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   499
  $ hg log -r 'destination(13)'
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   500
All copies of a cset
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   501
  $ hg log -r 'origin(13) or destination(origin(13))'
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   502
  changeset:   2:5c095ad7e90f
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   503
  user:        test
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   504
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   505
  summary:     2
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   506
  
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   507
  changeset:   7:ef0ef43d49e7
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   508
  parent:      0:68795b066622
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   509
  user:        foo
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   510
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   511
  summary:     2
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   512
  
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   513
  changeset:   13:9db0f28fd374
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   514
  user:        foo
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   515
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   516
  summary:     2
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   517
  
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   518
  changeset:   19:2e80e1351d6e
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   519
  user:        test
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   520
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   521
  summary:     2
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   522
  
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   523
  changeset:   21:7e61b508e709
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   524
  branch:      dev
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   525
  user:        foo
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   526
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   527
  summary:     2
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   528
  
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   529
  changeset:   22:1313d0a825e2
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   530
  branch:      dev
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   531
  tag:         tip
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   532
  user:        foo
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   533
  date:        Thu Jan 01 00:00:00 1970 +0000
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   534
  summary:     2
a3da6f298592 revset: add destination() predicate
Matt Harbison <matt_harbison@yahoo.com>
parents: 17185
diff changeset
   535