Mercurial > hg
annotate tests/test-newbranch.t @ 13011:4936a04b6792
minirst: improved support for option lists.
This enables minirst to parse and print option lists which have both
long and short options. Before, we could only parse option lists with
long options.
author | Erik Zielke <ez@aragost.com> |
---|---|
date | Tue, 02 Nov 2010 17:44:19 +0100 |
parents | 4134686b83e1 |
children | 9e7e24052745 |
rev | line source |
---|---|
12279 | 1 $ branchcache=.hg/branchheads.cache |
3420
2576b6731524
Add some basic branch name tests
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
2 |
12279 | 3 $ hg init t |
4 $ cd t | |
6160
3ee3bc5d06c5
tests: hide the name of the branch cache file
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
5988
diff
changeset
|
5 |
12279 | 6 $ hg branches |
7 $ echo foo > a | |
8 $ hg add a | |
9 $ hg ci -m "initial" | |
10 $ hg branch foo | |
11 marked working directory as branch foo | |
12 $ hg branch | |
13 foo | |
14 $ hg ci -m "add branch name" | |
15 $ hg branch bar | |
16 marked working directory as branch bar | |
17 $ hg ci -m "change branch name" | |
18 | |
19 Branch shadowing: | |
20 | |
21 $ hg branch default | |
22 abort: a branch of the same name already exists (use 'hg update' to switch to it) | |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
12279
diff
changeset
|
23 [255] |
12279 | 24 |
25 $ hg branch -f default | |
26 marked working directory as branch default | |
3420
2576b6731524
Add some basic branch name tests
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
27 |
12279 | 28 $ hg ci -m "clear branch name" |
29 created new head | |
30 | |
31 There should be only one default branch head | |
32 | |
33 $ hg heads . | |
34 changeset: 3:9d567d0b51f9 | |
35 tag: tip | |
36 user: test | |
37 date: Thu Jan 01 00:00:00 1970 +0000 | |
38 summary: clear branch name | |
39 | |
3420
2576b6731524
Add some basic branch name tests
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
40 |
12279 | 41 $ hg co foo |
42 0 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
43 $ hg branch | |
44 foo | |
45 $ echo bleah > a | |
46 $ hg ci -m "modify a branch" | |
47 | |
48 $ hg merge default | |
49 0 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
50 (branch merge, don't forget to commit) | |
51 | |
52 $ hg branch | |
53 foo | |
54 $ hg ci -m "merge" | |
8954
e67e5b60e55f
Branch heads should not include "heads" that are ancestors of other heads.
Brendan Cully <brendan@kublai.com>
parents:
7654
diff
changeset
|
55 |
12279 | 56 $ hg log |
57 changeset: 5:dc140083783b | |
58 branch: foo | |
59 tag: tip | |
60 parent: 4:98d14f698afe | |
61 parent: 3:9d567d0b51f9 | |
62 user: test | |
63 date: Thu Jan 01 00:00:00 1970 +0000 | |
64 summary: merge | |
65 | |
66 changeset: 4:98d14f698afe | |
67 branch: foo | |
68 parent: 1:0079f24813e2 | |
69 user: test | |
70 date: Thu Jan 01 00:00:00 1970 +0000 | |
71 summary: modify a branch | |
72 | |
73 changeset: 3:9d567d0b51f9 | |
74 user: test | |
75 date: Thu Jan 01 00:00:00 1970 +0000 | |
76 summary: clear branch name | |
77 | |
78 changeset: 2:ed2bbf4e0102 | |
79 branch: bar | |
80 user: test | |
81 date: Thu Jan 01 00:00:00 1970 +0000 | |
82 summary: change branch name | |
83 | |
84 changeset: 1:0079f24813e2 | |
85 branch: foo | |
86 user: test | |
87 date: Thu Jan 01 00:00:00 1970 +0000 | |
88 summary: add branch name | |
89 | |
90 changeset: 0:db01e8ea3388 | |
91 user: test | |
92 date: Thu Jan 01 00:00:00 1970 +0000 | |
93 summary: initial | |
94 | |
95 $ hg branches | |
96 foo 5:dc140083783b | |
97 default 3:9d567d0b51f9 (inactive) | |
98 bar 2:ed2bbf4e0102 (inactive) | |
3420
2576b6731524
Add some basic branch name tests
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
99 |
12279 | 100 $ hg branches -q |
101 foo | |
102 default | |
103 bar | |
3420
2576b6731524
Add some basic branch name tests
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
104 |
12279 | 105 Test for invalid branch cache: |
3502
8dc14d630b29
add branch and branches commands
Matt Mackall <mpm@selenic.com>
parents:
3451
diff
changeset
|
106 |
12279 | 107 $ hg rollback |
108 rolling back to revision 4 (undo commit) | |
109 | |
110 $ cp $branchcache .hg/bc-invalid | |
111 | |
112 $ hg log -r foo | |
113 changeset: 4:98d14f698afe | |
114 branch: foo | |
115 tag: tip | |
116 parent: 1:0079f24813e2 | |
117 user: test | |
118 date: Thu Jan 01 00:00:00 1970 +0000 | |
119 summary: modify a branch | |
120 | |
121 $ cp .hg/bc-invalid $branchcache | |
4175
fc12ac3755d5
Test update to branch tip
Brendan Cully <brendan@kublai.com>
parents:
4169
diff
changeset
|
122 |
12279 | 123 $ hg --debug log -r foo |
124 invalidating branch cache (tip differs) | |
125 changeset: 4:98d14f698afeaff8cb612dcf215ce95e639effc3 | |
126 branch: foo | |
127 tag: tip | |
128 parent: 1:0079f24813e2b73a891577c243684c5066347bc8 | |
129 parent: -1:0000000000000000000000000000000000000000 | |
130 manifest: 4:d01b250baaa05909152f7ae07d7a649deea0df9a | |
131 user: test | |
132 date: Thu Jan 01 00:00:00 1970 +0000 | |
133 files: a | |
134 extra: branch=foo | |
135 description: | |
136 modify a branch | |
137 | |
138 | |
139 $ rm $branchcache | |
140 $ echo corrupted > $branchcache | |
141 | |
142 $ hg log -qr foo | |
143 4:98d14f698afe | |
144 | |
145 $ cat $branchcache | |
146 98d14f698afeaff8cb612dcf215ce95e639effc3 4 | |
147 9d567d0b51f9e2068b054e1948e1a927f99b5874 default | |
148 98d14f698afeaff8cb612dcf215ce95e639effc3 foo | |
149 ed2bbf4e01029020711be82ca905283e883f0e11 bar | |
150 | |
151 Push should update the branch cache: | |
152 | |
153 $ hg init ../target | |
154 | |
155 Pushing just rev 0: | |
156 | |
157 $ hg push -qr 0 ../target | |
5988
ee317dbfb9d0
update the branch cache at the end of addchangegroup
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
4410
diff
changeset
|
158 |
12279 | 159 $ cat ../target/$branchcache |
160 db01e8ea3388fd3c7c94e1436ea2bd6a53d581c5 0 | |
161 db01e8ea3388fd3c7c94e1436ea2bd6a53d581c5 default | |
162 | |
163 Pushing everything: | |
164 | |
165 $ hg push -qf ../target | |
166 | |
167 $ cat ../target/$branchcache | |
168 98d14f698afeaff8cb612dcf215ce95e639effc3 4 | |
169 9d567d0b51f9e2068b054e1948e1a927f99b5874 default | |
170 98d14f698afeaff8cb612dcf215ce95e639effc3 foo | |
171 ed2bbf4e01029020711be82ca905283e883f0e11 bar | |
172 | |
173 Update with no arguments: tipmost revision of the current branch: | |
174 | |
175 $ hg up -q -C 0 | |
176 $ hg up -q | |
177 $ hg id | |
178 9d567d0b51f9 | |
179 | |
180 $ hg up -q 1 | |
181 $ hg up -q | |
182 $ hg id | |
183 98d14f698afe (foo) tip | |
184 | |
185 $ hg branch foobar | |
186 marked working directory as branch foobar | |
187 | |
188 $ hg up | |
189 abort: branch foobar not found | |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
12279
diff
changeset
|
190 [255] |
12279 | 191 |
192 Fastforward merge: | |
193 | |
194 $ hg branch ff | |
195 marked working directory as branch ff | |
4231
83153299aab5
avoid a traceback with hg branch newbranch; hg up
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
4179
diff
changeset
|
196 |
12279 | 197 $ echo ff > ff |
198 $ hg ci -Am'fast forward' | |
199 adding ff | |
200 | |
201 $ hg up foo | |
202 0 files updated, 0 files merged, 1 files removed, 0 files unresolved | |
203 | |
204 $ hg merge ff | |
205 1 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
206 (branch merge, don't forget to commit) | |
4410
bbc97d419b16
Add fast-forward branch merging
Brendan Cully <brendan@kublai.com>
parents:
4232
diff
changeset
|
207 |
12279 | 208 $ hg branch |
209 foo | |
210 $ hg commit -m'Merge ff into foo' | |
211 $ hg parents | |
212 changeset: 6:917eb54e1b4b | |
213 branch: foo | |
214 tag: tip | |
215 parent: 4:98d14f698afe | |
216 parent: 5:6683a60370cb | |
217 user: test | |
218 date: Thu Jan 01 00:00:00 1970 +0000 | |
219 summary: Merge ff into foo | |
220 | |
221 $ hg manifest | |
222 a | |
223 ff | |
224 | |
225 | |
226 Test merging, add 3 default heads and one test head: | |
227 | |
228 $ cd .. | |
229 $ hg init merges | |
230 $ cd merges | |
231 $ echo a > a | |
232 $ hg ci -Ama | |
233 adding a | |
234 | |
235 $ echo b > b | |
236 $ hg ci -Amb | |
237 adding b | |
6723
1fe6f365df2e
merge: only in-branch merges can be implicit
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
6160
diff
changeset
|
238 |
12279 | 239 $ hg up 0 |
240 0 files updated, 0 files merged, 1 files removed, 0 files unresolved | |
241 $ echo c > c | |
242 $ hg ci -Amc | |
243 adding c | |
244 created new head | |
6723
1fe6f365df2e
merge: only in-branch merges can be implicit
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
6160
diff
changeset
|
245 |
12279 | 246 $ hg up 0 |
247 0 files updated, 0 files merged, 1 files removed, 0 files unresolved | |
248 $ echo d > d | |
249 $ hg ci -Amd | |
250 adding d | |
251 created new head | |
6723
1fe6f365df2e
merge: only in-branch merges can be implicit
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
6160
diff
changeset
|
252 |
12279 | 253 $ hg up 0 |
254 0 files updated, 0 files merged, 1 files removed, 0 files unresolved | |
255 $ hg branch test | |
256 marked working directory as branch test | |
257 $ echo e >> e | |
258 $ hg ci -Ame | |
259 adding e | |
6723
1fe6f365df2e
merge: only in-branch merges can be implicit
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
6160
diff
changeset
|
260 |
12279 | 261 $ hg log |
262 changeset: 4:3a1e01ed1df4 | |
263 branch: test | |
264 tag: tip | |
265 parent: 0:cb9a9f314b8b | |
266 user: test | |
267 date: Thu Jan 01 00:00:00 1970 +0000 | |
268 summary: e | |
269 | |
270 changeset: 3:980f7dc84c29 | |
271 parent: 0:cb9a9f314b8b | |
272 user: test | |
273 date: Thu Jan 01 00:00:00 1970 +0000 | |
274 summary: d | |
275 | |
276 changeset: 2:d36c0562f908 | |
277 parent: 0:cb9a9f314b8b | |
278 user: test | |
279 date: Thu Jan 01 00:00:00 1970 +0000 | |
280 summary: c | |
281 | |
282 changeset: 1:d2ae7f538514 | |
283 user: test | |
284 date: Thu Jan 01 00:00:00 1970 +0000 | |
285 summary: b | |
286 | |
287 changeset: 0:cb9a9f314b8b | |
288 user: test | |
289 date: Thu Jan 01 00:00:00 1970 +0000 | |
290 summary: a | |
291 | |
292 Implicit merge with test branch as parent: | |
6723
1fe6f365df2e
merge: only in-branch merges can be implicit
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
6160
diff
changeset
|
293 |
12279 | 294 $ hg merge |
295 abort: branch 'test' has one head - please merge with an explicit rev | |
296 (run 'hg heads' to see all heads) | |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
12279
diff
changeset
|
297 [255] |
12279 | 298 $ hg up -C default |
299 1 files updated, 0 files merged, 1 files removed, 0 files unresolved | |
300 | |
301 Implicit merge with default branch as parent: | |
302 | |
303 $ hg merge | |
304 abort: branch 'default' has 3 heads - please merge with an explicit rev | |
305 (run 'hg heads .' to see heads) | |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
12279
diff
changeset
|
306 [255] |
12279 | 307 |
308 3 branch heads, explicit merge required: | |
309 | |
310 $ hg merge 2 | |
311 1 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
312 (branch merge, don't forget to commit) | |
313 $ hg ci -m merge | |
314 | |
315 2 branch heads, implicit merge works: | |
316 | |
317 $ hg merge | |
318 1 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
319 (branch merge, don't forget to commit) | |
320 |