annotate tests/test-graft.t @ 16600:b54f3c502e63

graft: remark on empty graft
author Matt Mackall <mpm@selenic.com>
date Sun, 06 May 2012 14:15:17 -0500
parents eab9119c5dee
children 0c98820be15c
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
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
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
57 Can't graft with dirty wd:
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
58
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
59 $ hg up -q 0
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
60 $ echo foo > a
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
61 $ hg graft 1
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
62 abort: outstanding uncommitted changes
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
63 [255]
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
64 $ hg revert a
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
65
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
66 Graft a rename:
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
67
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
68 $ hg graft 2 -u foo
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
69 grafting revision 2
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
70 merging a and b to b
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
71 $ hg export tip --git
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
72 # HG changeset patch
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
73 # User foo
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
74 # Date 0 0
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
75 # Node ID d2e44c99fd3f31c176ea4efb9eca9f6306c81756
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
76 # Parent 68795b066622ca79a25816a662041d8f78f3cd9e
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
77 2
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
78
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
79 diff --git a/a b/b
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
80 rename from a
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
81 rename to b
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
82 --- a/a
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
83 +++ b/b
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
84 @@ -1,1 +1,1 @@
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
85 -a
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
86 +b
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
87
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
88 Look for extra:source
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
89
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
90 $ hg log --debug -r tip
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
91 changeset: 7:d2e44c99fd3f31c176ea4efb9eca9f6306c81756
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
92 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
93 phase: draft
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
94 parent: 0:68795b066622ca79a25816a662041d8f78f3cd9e
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
95 parent: -1:0000000000000000000000000000000000000000
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
96 manifest: 7:5d59766436fd8fbcd38e7bebef0f6eaf3eebe637
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
97 user: foo
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
98 date: Thu Jan 01 00:00:00 1970 +0000
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
99 files+: b
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
100 files-: a
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
101 extra: branch=default
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
102 extra: source=5c095ad7e90f871700f02dd1fa5012cb4498a2d4
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
103 description:
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
104 2
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
105
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
106
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
107
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
108 Graft out of order, skipping a merge and a duplicate
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
109
16389
79fecd735d26 graft: add --dry-run support (issue3362)
Matt Mackall <mpm@selenic.com>
parents: 16094
diff changeset
110 $ 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
111 skipping ungraftable merge revision 6
79fecd735d26 graft: add --dry-run support (issue3362)
Matt Mackall <mpm@selenic.com>
parents: 16094
diff changeset
112 skipping already grafted revision 2
79fecd735d26 graft: add --dry-run support (issue3362)
Matt Mackall <mpm@selenic.com>
parents: 16094
diff changeset
113 grafting revision 1
79fecd735d26 graft: add --dry-run support (issue3362)
Matt Mackall <mpm@selenic.com>
parents: 16094
diff changeset
114 grafting revision 5
79fecd735d26 graft: add --dry-run support (issue3362)
Matt Mackall <mpm@selenic.com>
parents: 16094
diff changeset
115 grafting revision 4
79fecd735d26 graft: add --dry-run support (issue3362)
Matt Mackall <mpm@selenic.com>
parents: 16094
diff changeset
116 grafting revision 3
79fecd735d26 graft: add --dry-run support (issue3362)
Matt Mackall <mpm@selenic.com>
parents: 16094
diff changeset
117
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
118 $ hg graft 1 5 4 3 'merge()' 2 --debug
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
119 skipping ungraftable merge revision 6
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
120 scanning for duplicate grafts
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
121 skipping already grafted revision 2
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
122 grafting revision 1
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
123 searching for copies back to rev 1
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
124 unmatched files in local:
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
125 b
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
126 all copies found (* = to merge, ! = divergent):
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
127 b -> a *
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
128 checking for directory renames
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
129 resolving manifests
15625
efdcce3fd2d5 merge: make debug output easier to read
Martin Geisler <mg@aragost.com>
parents: 15513
diff changeset
130 overwrite: False, partial: False
efdcce3fd2d5 merge: make debug output easier to read
Martin Geisler <mg@aragost.com>
parents: 15513
diff changeset
131 ancestor: 68795b066622, local: d2e44c99fd3f+, remote: 5d205f8b35b6
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
132 b: local copied/moved to a -> m
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
133 preserving b for resolve of b
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
134 updating: b 1/1 files (100.00%)
16600
b54f3c502e63 graft: remark on empty graft
Matt Mackall <mpm@selenic.com>
parents: 16509
diff changeset
135 graft for revision 1 is empty
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
136 grafting revision 5
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
137 searching for copies back to rev 1
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
138 resolving manifests
15625
efdcce3fd2d5 merge: make debug output easier to read
Martin Geisler <mg@aragost.com>
parents: 15513
diff changeset
139 overwrite: False, partial: False
16509
eab9119c5dee rebase: skip resolved but emptied revisions
Patrick Mezard <patrick@mezard.eu>
parents: 16508
diff changeset
140 ancestor: 4c60f11aa304, local: d2e44c99fd3f+, remote: 97f8bfe72746
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
141 e: remote is newer -> g
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
142 updating: e 1/1 files (100.00%)
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
143 getting e
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
144 e
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
145 grafting revision 4
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
146 searching for copies back to rev 1
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
147 resolving manifests
15625
efdcce3fd2d5 merge: make debug output easier to read
Martin Geisler <mg@aragost.com>
parents: 15513
diff changeset
148 overwrite: False, partial: False
16509
eab9119c5dee rebase: skip resolved but emptied revisions
Patrick Mezard <patrick@mezard.eu>
parents: 16508
diff changeset
149 ancestor: 4c60f11aa304, local: 839a7e8fcf80+, remote: 9c233e8e184d
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
150 e: versions differ -> m
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
151 d: remote is newer -> g
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
152 preserving e for resolve of e
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
153 updating: d 1/2 files (50.00%)
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
154 getting d
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
155 updating: e 2/2 files (100.00%)
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
156 picked tool 'internal:merge' for e (binary False symlink False)
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
157 merging e
16509
eab9119c5dee rebase: skip resolved but emptied revisions
Patrick Mezard <patrick@mezard.eu>
parents: 16508
diff changeset
158 my e@839a7e8fcf80+ other e@9c233e8e184d ancestor e@68795b066622
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
159 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
160 merging e incomplete! (edit conflicts, then use 'hg resolve --mark')
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
161 abort: unresolved conflicts, can't continue
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
162 (use hg resolve and hg graft --continue)
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
163 [255]
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
164
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
165 Continue without resolve should fail:
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
166
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
167 $ hg graft -c
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
168 grafting revision 4
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
169 abort: unresolved merge conflicts (see hg help resolve)
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
170 [255]
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
171
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
172 Fix up:
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
173
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
174 $ echo b > e
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
175 $ hg resolve -m e
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
176
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
177 Continue with a revision should fail:
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
178
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
179 $ hg graft -c 6
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
180 abort: can't specify --continue and revisions
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 Continue for real, clobber usernames
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 $ hg graft -c -U
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
186 grafting revision 4
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
187 grafting revision 3
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
188
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
189 Compare with original:
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
190
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
191 $ hg diff -r 6
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
192 $ hg status --rev 0:. -C
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
193 M d
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
194 M e
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
195 A b
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
196 a
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
197 A c
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
198 a
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
199 R a
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
200
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
201 View graph:
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
202
15918
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
203 $ hg --config extensions.graphlog= log -G --template '{author}@{rev}.{phase}: {desc}\n'
16509
eab9119c5dee rebase: skip resolved but emptied revisions
Patrick Mezard <patrick@mezard.eu>
parents: 16508
diff changeset
204 @ test@10.draft: 3
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
205 |
16509
eab9119c5dee rebase: skip resolved but emptied revisions
Patrick Mezard <patrick@mezard.eu>
parents: 16508
diff changeset
206 o test@9.draft: 4
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
207 |
16509
eab9119c5dee rebase: skip resolved but emptied revisions
Patrick Mezard <patrick@mezard.eu>
parents: 16508
diff changeset
208 o test@8.draft: 5
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
209 |
15918
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
210 o foo@7.draft: 2
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
211 |
15918
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
212 | o test@6.secret: 6
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
213 | |\
15918
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
214 | | o test@5.draft: 5
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
215 | | |
15918
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
216 | o | test@4.draft: 4
15361
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 | o baz@3.public: 3
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
219 | |
15918
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
220 | o test@2.public: 2
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
221 | |
15918
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
222 | o bar@1.public: 1
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
223 |/
15918
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
224 o test@0.public: 0
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
225
15506
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
226 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
227 $ hg up -q 0
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
228 $ echo 'g'>g
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
229 $ hg add g
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
230 $ hg ci -m 7
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
231 created new head
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
232 $ hg graft 7
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
233 grafting revision 7
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
234
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
235 $ hg log -r 7 --template '{rev}:{node}\n'
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
236 7:d2e44c99fd3f31c176ea4efb9eca9f6306c81756
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
237 $ 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
238 2:5c095ad7e90f871700f02dd1fa5012cb4498a2d4
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
239
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
240 $ hg log --debug -r tip
16509
eab9119c5dee rebase: skip resolved but emptied revisions
Patrick Mezard <patrick@mezard.eu>
parents: 16508
diff changeset
241 changeset: 12:95adbe5de6b10f376b699ece9ed5a57cd7b4b0f6
15506
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
242 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
243 phase: draft
16509
eab9119c5dee rebase: skip resolved but emptied revisions
Patrick Mezard <patrick@mezard.eu>
parents: 16508
diff changeset
244 parent: 11:b592ea63bb0c19a6c5c44685ee29a2284f9f1b8f
15506
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
245 parent: -1:0000000000000000000000000000000000000000
16509
eab9119c5dee rebase: skip resolved but emptied revisions
Patrick Mezard <patrick@mezard.eu>
parents: 16508
diff changeset
246 manifest: 12:9944044f82a462bbaccc9bdf7e0ac5b811db7d1b
15506
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
247 user: foo
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
248 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
249 files+: b
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
250 files-: a
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
251 extra: branch=default
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
252 extra: source=5c095ad7e90f871700f02dd1fa5012cb4498a2d4
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
253 description:
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
254 2
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
255
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
256
15508
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
257 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
258 $ hg up -q 6
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
259 $ hg graft 7
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
260 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
261 [255]
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
262
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
263 Disallow grafting already grafted csets with the same origin onto each other
16509
eab9119c5dee rebase: skip resolved but emptied revisions
Patrick Mezard <patrick@mezard.eu>
parents: 16508
diff changeset
264 $ hg up -q 12
15508
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
265 $ hg graft 2
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
266 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
267 [255]
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
268 $ hg graft 7
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
269 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
270 [255]
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
271
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
272 $ hg up -q 7
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
273 $ hg graft 2
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
274 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
275 [255]
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
276 $ hg graft tip
16509
eab9119c5dee rebase: skip resolved but emptied revisions
Patrick Mezard <patrick@mezard.eu>
parents: 16508
diff changeset
277 skipping already grafted revision 12 (same origin 2)
15508
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
278 [255]