annotate tests/test-graft.t @ 16952:d1a0ac9b6b8a stable

test-commit: remove extra cd .. This specific cd .. leaves the base directory of the test ($TESTTMP). Removing it avoids that test artifacts (e.g. files) are created outside of the base directory.
author Adrian Buehlmann <adrian@cadifra.com>
date Sat, 09 Jun 2012 14:20:25 +0200
parents eab9119c5dee
children b54f3c502e63 52ea9ce5b641
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%)
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
135 grafting revision 5
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
136 searching for copies back to rev 1
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
137 resolving manifests
15625
efdcce3fd2d5 merge: make debug output easier to read
Martin Geisler <mg@aragost.com>
parents: 15513
diff changeset
138 overwrite: False, partial: False
16509
eab9119c5dee rebase: skip resolved but emptied revisions
Patrick Mezard <patrick@mezard.eu>
parents: 16508
diff changeset
139 ancestor: 4c60f11aa304, local: d2e44c99fd3f+, remote: 97f8bfe72746
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
140 e: remote is newer -> g
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
141 updating: e 1/1 files (100.00%)
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
142 getting e
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
143 e
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
144 grafting revision 4
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
145 searching for copies back to rev 1
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
146 resolving manifests
15625
efdcce3fd2d5 merge: make debug output easier to read
Martin Geisler <mg@aragost.com>
parents: 15513
diff changeset
147 overwrite: False, partial: False
16509
eab9119c5dee rebase: skip resolved but emptied revisions
Patrick Mezard <patrick@mezard.eu>
parents: 16508
diff changeset
148 ancestor: 4c60f11aa304, local: 839a7e8fcf80+, remote: 9c233e8e184d
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
149 e: versions differ -> m
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
150 d: remote is newer -> g
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
151 preserving e for resolve of e
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
152 updating: d 1/2 files (50.00%)
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
153 getting d
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
154 updating: e 2/2 files (100.00%)
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
155 picked tool 'internal:merge' for e (binary False symlink False)
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
156 merging e
16509
eab9119c5dee rebase: skip resolved but emptied revisions
Patrick Mezard <patrick@mezard.eu>
parents: 16508
diff changeset
157 my e@839a7e8fcf80+ other e@9c233e8e184d ancestor e@68795b066622
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
158 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
159 merging e incomplete! (edit conflicts, then use 'hg resolve --mark')
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
160 abort: unresolved conflicts, can't continue
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
161 (use hg resolve and hg graft --continue)
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
162 [255]
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
163
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
164 Continue without resolve should fail:
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
165
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
166 $ hg graft -c
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
167 grafting revision 4
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
168 abort: unresolved merge conflicts (see hg help resolve)
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
169 [255]
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
170
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
171 Fix up:
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
172
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
173 $ echo b > e
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
174 $ hg resolve -m e
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 with a revision 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 6
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
179 abort: can't specify --continue and revisions
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
180 [255]
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
181
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
182 Continue for real, clobber usernames
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
183
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
184 $ hg graft -c -U
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
185 grafting revision 4
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
186 grafting revision 3
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 Compare with original:
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 diff -r 6
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
191 $ hg status --rev 0:. -C
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
192 M d
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
193 M e
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
194 A b
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
195 a
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
196 A c
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
197 a
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
198 R a
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 View graph:
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
201
15918
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
202 $ 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
203 @ test@10.draft: 3
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
204 |
16509
eab9119c5dee rebase: skip resolved but emptied revisions
Patrick Mezard <patrick@mezard.eu>
parents: 16508
diff changeset
205 o test@9.draft: 4
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
206 |
16509
eab9119c5dee rebase: skip resolved but emptied revisions
Patrick Mezard <patrick@mezard.eu>
parents: 16508
diff changeset
207 o test@8.draft: 5
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
208 |
15918
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
209 o foo@7.draft: 2
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
210 |
15918
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
211 | o test@6.secret: 6
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
212 | |\
15918
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
213 | | o test@5.draft: 5
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
214 | | |
15918
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
215 | o | test@4.draft: 4
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
216 | |/
15918
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
217 | o baz@3.public: 3
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
218 | |
15918
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
219 | o test@2.public: 2
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
220 | |
15918
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
221 | o bar@1.public: 1
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
222 |/
15918
4f9853e7f690 graft: add test to check the phase of new changesets
Alain Leufroy <alain.leufroy@logilab.fr>
parents: 15907
diff changeset
223 o test@0.public: 0
15361
c1930992e111 graft: add a test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
224
15506
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
225 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
226 $ hg up -q 0
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
227 $ echo 'g'>g
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
228 $ hg add g
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
229 $ hg ci -m 7
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
230 created new head
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
231 $ hg graft 7
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
232 grafting revision 7
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
233
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
234 $ 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
235 7:d2e44c99fd3f31c176ea4efb9eca9f6306c81756
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
236 $ 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
237 2:5c095ad7e90f871700f02dd1fa5012cb4498a2d4
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
238
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
239 $ hg log --debug -r tip
16509
eab9119c5dee rebase: skip resolved but emptied revisions
Patrick Mezard <patrick@mezard.eu>
parents: 16508
diff changeset
240 changeset: 12:95adbe5de6b10f376b699ece9ed5a57cd7b4b0f6
15506
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
241 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
242 phase: draft
16509
eab9119c5dee rebase: skip resolved but emptied revisions
Patrick Mezard <patrick@mezard.eu>
parents: 16508
diff changeset
243 parent: 11:b592ea63bb0c19a6c5c44685ee29a2284f9f1b8f
15506
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
244 parent: -1:0000000000000000000000000000000000000000
16509
eab9119c5dee rebase: skip resolved but emptied revisions
Patrick Mezard <patrick@mezard.eu>
parents: 16508
diff changeset
245 manifest: 12:9944044f82a462bbaccc9bdf7e0ac5b811db7d1b
15506
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
246 user: foo
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
247 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
248 files+: b
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
249 files-: a
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
250 extra: branch=default
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
251 extra: source=5c095ad7e90f871700f02dd1fa5012cb4498a2d4
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
252 description:
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
253 2
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
254
dc9fb7015d7f graft: preserve original source in subsequent grafts
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15361
diff changeset
255
15508
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
256 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
257 $ hg up -q 6
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
258 $ hg graft 7
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
259 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
260 [255]
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
261
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
262 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
263 $ 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
264 $ hg graft 2
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
265 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
266 [255]
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
267 $ hg graft 7
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
268 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
269 [255]
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
270
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
271 $ hg up -q 7
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
272 $ hg graft 2
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
273 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
274 [255]
00276525e2b7 graft: disallow grafting grafted csets in specific situations (issue3091)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 15507
diff changeset
275 $ hg graft tip
16509
eab9119c5dee rebase: skip resolved but emptied revisions
Patrick Mezard <patrick@mezard.eu>
parents: 16508
diff changeset
276 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
277 [255]