##// END OF EJS Templates
test-branch-change: stabilize for Windows
Matt Harbison -
r35789:ebb75443 default
parent child Browse files
Show More
@@ -1,330 +1,331 b''
1 Testing changing branch on commits
1 Testing changing branch on commits
2 ==================================
2 ==================================
3
3
4 Setup
4 Setup
5
5
6 $ cat >> $HGRCPATH << EOF
6 $ cat >> $HGRCPATH << EOF
7 > [alias]
7 > [alias]
8 > glog = log -G -T "{rev}:{node|short} {desc}\n{branch} ({bookmarks})"
8 > glog = log -G -T "{rev}:{node|short} {desc}\n{branch} ({bookmarks})"
9 > [experimental]
9 > [experimental]
10 > evolution = createmarkers
10 > evolution = createmarkers
11 > [extensions]
11 > [extensions]
12 > rebase=
12 > rebase=
13 > EOF
13 > EOF
14
14
15 $ hg init repo
15 $ hg init repo
16 $ cd repo
16 $ cd repo
17 $ for ch in a b c d e; do echo foo >> $ch; hg ci -Aqm "Added "$ch; done
17 $ for ch in a b c d e; do echo foo >> $ch; hg ci -Aqm "Added "$ch; done
18 $ hg glog
18 $ hg glog
19 @ 4:aa98ab95a928 Added e
19 @ 4:aa98ab95a928 Added e
20 | default ()
20 | default ()
21 o 3:62615734edd5 Added d
21 o 3:62615734edd5 Added d
22 | default ()
22 | default ()
23 o 2:28ad74487de9 Added c
23 o 2:28ad74487de9 Added c
24 | default ()
24 | default ()
25 o 1:29becc82797a Added b
25 o 1:29becc82797a Added b
26 | default ()
26 | default ()
27 o 0:18d04c59bb5d Added a
27 o 0:18d04c59bb5d Added a
28 default ()
28 default ()
29
29
30 $ hg branches
30 $ hg branches
31 default 4:aa98ab95a928
31 default 4:aa98ab95a928
32
32
33 Try without passing a new branch name
33 Try without passing a new branch name
34
34
35 $ hg branch -r .
35 $ hg branch -r .
36 abort: no branch name specified for the revisions
36 abort: no branch name specified for the revisions
37 [255]
37 [255]
38
38
39 Setting an invalid branch name
39 Setting an invalid branch name
40
40
41 $ hg branch -r . a:b
41 $ hg branch -r . a:b
42 abort: ':' cannot be used in a name
42 abort: ':' cannot be used in a name
43 [255]
43 [255]
44 $ hg branch -r . tip
44 $ hg branch -r . tip
45 abort: the name 'tip' is reserved
45 abort: the name 'tip' is reserved
46 [255]
46 [255]
47 $ hg branch -r . 1234
47 $ hg branch -r . 1234
48 abort: cannot use an integer as a name
48 abort: cannot use an integer as a name
49 [255]
49 [255]
50
50
51 Change on non-linear set of commits
51 Change on non-linear set of commits
52
52
53 $ hg branch -r 2 -r 4 foo
53 $ hg branch -r 2 -r 4 foo
54 abort: cannot change branch of non-linear revisions
54 abort: cannot change branch of non-linear revisions
55 [255]
55 [255]
56
56
57 Change in middle of the stack (linear commits)
57 Change in middle of the stack (linear commits)
58
58
59 $ hg branch -r 1::3 foo
59 $ hg branch -r 1::3 foo
60 abort: cannot change branch of changeset with children
60 abort: cannot change branch of changeset with children
61 [255]
61 [255]
62
62
63 Change with dirty working directory
63 Change with dirty working directory
64
64
65 $ echo bar > a
65 $ echo bar > a
66 $ hg branch -r . foo
66 $ hg branch -r . foo
67 abort: uncommitted changes
67 abort: uncommitted changes
68 [255]
68 [255]
69
69
70 $ hg revert --all
70 $ hg revert --all
71 reverting a
71 reverting a
72
72
73 Change on empty revision set
73 Change on empty revision set
74
74
75 $ hg branch -r 'draft() - all()' foo
75 $ hg branch -r 'draft() - all()' foo
76 abort: empty revision set
76 abort: empty revision set
77 [255]
77 [255]
78
78
79 Changing branch on linear set of commits from head
79 Changing branch on linear set of commits from head
80
80
81 Without obsmarkers
81 Without obsmarkers
82
82
83 $ hg branch -r 3:4 foo --config experimental.evolution=!
83 $ hg branch -r 3:4 foo --config experimental.evolution=!
84 changed branch on 2 changesets
84 changed branch on 2 changesets
85 saved backup bundle to $TESTTMP/repo/.hg/strip-backup/62615734edd5-e86bd13a-branch-change.hg (glob)
85 saved backup bundle to $TESTTMP/repo/.hg/strip-backup/62615734edd5-e86bd13a-branch-change.hg
86 $ hg glog
86 $ hg glog
87 @ 4:3938acfb5c0f Added e
87 @ 4:3938acfb5c0f Added e
88 | foo ()
88 | foo ()
89 o 3:9435da006bdc Added d
89 o 3:9435da006bdc Added d
90 | foo ()
90 | foo ()
91 o 2:28ad74487de9 Added c
91 o 2:28ad74487de9 Added c
92 | default ()
92 | default ()
93 o 1:29becc82797a Added b
93 o 1:29becc82797a Added b
94 | default ()
94 | default ()
95 o 0:18d04c59bb5d Added a
95 o 0:18d04c59bb5d Added a
96 default ()
96 default ()
97
97
98 $ hg branches
98 $ hg branches
99 foo 4:3938acfb5c0f
99 foo 4:3938acfb5c0f
100 default 2:28ad74487de9 (inactive)
100 default 2:28ad74487de9 (inactive)
101
101
102 With obsmarkers
102 With obsmarkers
103
103
104 $ hg branch -r 3::4 bar
104 $ hg branch -r 3::4 bar
105 changed branch on 2 changesets
105 changed branch on 2 changesets
106 $ hg glog
106 $ hg glog
107 @ 6:7c1991464886 Added e
107 @ 6:7c1991464886 Added e
108 | bar ()
108 | bar ()
109 o 5:1ea05e93925f Added d
109 o 5:1ea05e93925f Added d
110 | bar ()
110 | bar ()
111 o 2:28ad74487de9 Added c
111 o 2:28ad74487de9 Added c
112 | default ()
112 | default ()
113 o 1:29becc82797a Added b
113 o 1:29becc82797a Added b
114 | default ()
114 | default ()
115 o 0:18d04c59bb5d Added a
115 o 0:18d04c59bb5d Added a
116 default ()
116 default ()
117
117
118 $ hg branches
118 $ hg branches
119 bar 6:7c1991464886
119 bar 6:7c1991464886
120 default 2:28ad74487de9 (inactive)
120 default 2:28ad74487de9 (inactive)
121
121
122 Change branch name to an existing branch
122 Change branch name to an existing branch
123
123
124 $ hg branch -r . default
124 $ hg branch -r . default
125 abort: a branch of the same name already exists
125 abort: a branch of the same name already exists
126 [255]
126 [255]
127
127
128 Changing on a branch head which is not topological head
128 Changing on a branch head which is not topological head
129
129
130 $ hg branch -r 2 stable
130 $ hg branch -r 2 stable
131 abort: cannot change branch of changeset with children
131 abort: cannot change branch of changeset with children
132 [255]
132 [255]
133
133
134 Enabling the allowunstable config and trying to change branch on a branch head
134 Enabling the allowunstable config and trying to change branch on a branch head
135 which is not a topological head
135 which is not a topological head
136
136
137 $ echo "[experimental]" >> .hg/hgrc
137 $ echo "[experimental]" >> .hg/hgrc
138 $ echo "evolution.allowunstable=yes" >> .hg/hgrc
138 $ echo "evolution.allowunstable=yes" >> .hg/hgrc
139 $ hg branch -r 2 foo
139 $ hg branch -r 2 foo
140 changed branch on 1 changesets
140 changed branch on 1 changesets
141 2 new orphan changesets
141 2 new orphan changesets
142
142
143 Changing branch of an obsoleted changeset
143 Changing branch of an obsoleted changeset
144
144
145 $ hg branch -r 4 foobar
145 $ hg branch -r 4 foobar
146 abort: hidden revision '4' was rewritten as: 7c1991464886!
146 abort: hidden revision '4' was rewritten as: 7c1991464886!
147 (use --hidden to access hidden revisions)
147 (use --hidden to access hidden revisions)
148 [255]
148 [255]
149
149
150 $ hg branch -r 4 --hidden foobar
150 $ hg branch -r 4 --hidden foobar
151 abort: cannot change branch of a obsolete changeset
151 abort: cannot change branch of a obsolete changeset
152 [255]
152 [255]
153
153
154 Make sure bookmark movement is correct
154 Make sure bookmark movement is correct
155
155
156 $ hg bookmark b1
156 $ hg bookmark b1
157 $ hg glog -r '.^::'
157 $ hg glog -r '.^::'
158 @ 6:7c1991464886 Added e
158 @ 6:7c1991464886 Added e
159 | bar (b1)
159 | bar (b1)
160 * 5:1ea05e93925f Added d
160 * 5:1ea05e93925f Added d
161 | bar ()
161 | bar ()
162 ~
162 ~
163
163
164 $ hg branch -r '(.^)::' wat --debug
164 $ hg branch -r '(.^)::' wat --debug
165 changing branch of '1ea05e93925f806d875a2163f9b76764be644636' from 'bar' to 'wat'
165 changing branch of '1ea05e93925f806d875a2163f9b76764be644636' from 'bar' to 'wat'
166 committing files:
166 committing files:
167 d
167 d
168 committing manifest
168 committing manifest
169 committing changelog
169 committing changelog
170 new node id is 343660ccab7400da637bd6a211d07f413536d718
170 new node id is 343660ccab7400da637bd6a211d07f413536d718
171 changing branch of '7c19914648869f5b02fc7fed31ddee9783fdd680' from 'bar' to 'wat'
171 changing branch of '7c19914648869f5b02fc7fed31ddee9783fdd680' from 'bar' to 'wat'
172 committing files:
172 committing files:
173 e
173 e
174 committing manifest
174 committing manifest
175 committing changelog
175 committing changelog
176 new node id is de1404b45a69f8cc6437d7679033ee33e9efb4ba
176 new node id is de1404b45a69f8cc6437d7679033ee33e9efb4ba
177 moving bookmarks ['b1'] from 7c19914648869f5b02fc7fed31ddee9783fdd680 to de1404b45a69f8cc6437d7679033ee33e9efb4ba
177 moving bookmarks ['b1'] from 7c19914648869f5b02fc7fed31ddee9783fdd680 to de1404b45a69f8cc6437d7679033ee33e9efb4ba
178 resolving manifests
178 resolving manifests
179 branchmerge: False, force: False, partial: False
179 branchmerge: False, force: False, partial: False
180 ancestor: 7c1991464886, local: 7c1991464886+, remote: de1404b45a69
180 ancestor: 7c1991464886, local: 7c1991464886+, remote: de1404b45a69
181 starting 4 threads for background file closing (?)
181 changed branch on 2 changesets
182 changed branch on 2 changesets
182 updating the branch cache
183 updating the branch cache
183 invalid branchheads cache (served): tip differs
184 invalid branchheads cache (served): tip differs
184
185
185 $ hg glog -r '(.^)::'
186 $ hg glog -r '(.^)::'
186 @ 9:de1404b45a69 Added e
187 @ 9:de1404b45a69 Added e
187 | wat (b1)
188 | wat (b1)
188 * 8:343660ccab74 Added d
189 * 8:343660ccab74 Added d
189 | wat ()
190 | wat ()
190 ~
191 ~
191
192
192 Make sure phase handling is correct
193 Make sure phase handling is correct
193
194
194 $ echo foo >> bar
195 $ echo foo >> bar
195 $ hg ci -Aqm "added bar" --secret
196 $ hg ci -Aqm "added bar" --secret
196 1 new orphan changesets
197 1 new orphan changesets
197 $ hg glog -r .
198 $ hg glog -r .
198 @ 10:8ad1294c1660 added bar
199 @ 10:8ad1294c1660 added bar
199 | wat (b1)
200 | wat (b1)
200 ~
201 ~
201 $ hg branch -r . secret
202 $ hg branch -r . secret
202 changed branch on 1 changesets
203 changed branch on 1 changesets
203 $ hg phase -r .
204 $ hg phase -r .
204 11: secret
205 11: secret
205
206
206 $ hg branches
207 $ hg branches
207 secret 11:38a9b2d53f98
208 secret 11:38a9b2d53f98
208 foo 7:8a4729a5e2b8
209 foo 7:8a4729a5e2b8
209 wat 9:de1404b45a69 (inactive)
210 wat 9:de1404b45a69 (inactive)
210 default 2:28ad74487de9 (inactive)
211 default 2:28ad74487de9 (inactive)
211 $ hg branch
212 $ hg branch
212 secret
213 secret
213
214
214 Changing branch of another head, different from one on which we are
215 Changing branch of another head, different from one on which we are
215
216
216 $ hg glog
217 $ hg glog
217 @ 11:38a9b2d53f98 added bar
218 @ 11:38a9b2d53f98 added bar
218 | secret (b1)
219 | secret (b1)
219 * 9:de1404b45a69 Added e
220 * 9:de1404b45a69 Added e
220 | wat ()
221 | wat ()
221 * 8:343660ccab74 Added d
222 * 8:343660ccab74 Added d
222 | wat ()
223 | wat ()
223 | o 7:8a4729a5e2b8 Added c
224 | o 7:8a4729a5e2b8 Added c
224 | | foo ()
225 | | foo ()
225 x | 2:28ad74487de9 Added c
226 x | 2:28ad74487de9 Added c
226 |/ default ()
227 |/ default ()
227 o 1:29becc82797a Added b
228 o 1:29becc82797a Added b
228 | default ()
229 | default ()
229 o 0:18d04c59bb5d Added a
230 o 0:18d04c59bb5d Added a
230 default ()
231 default ()
231
232
232 $ hg branch
233 $ hg branch
233 secret
234 secret
234
235
235 $ hg branch -r 7 foobar
236 $ hg branch -r 7 foobar
236 changed branch on 1 changesets
237 changed branch on 1 changesets
237
238
238 The current branch must be preserved
239 The current branch must be preserved
239 $ hg branch
240 $ hg branch
240 secret
241 secret
241
242
242 Changing branch on multiple heads at once
243 Changing branch on multiple heads at once
243
244
244 $ hg rebase -s 8 -d 12 --keepbranches -q
245 $ hg rebase -s 8 -d 12 --keepbranches -q
245
246
246 $ hg rebase -s 14 -d 1 --keepbranches -q
247 $ hg rebase -s 14 -d 1 --keepbranches -q
247
248
248 $ hg branch -r 0: stable
249 $ hg branch -r 0: stable
249 changed branch on 6 changesets
250 changed branch on 6 changesets
250 $ hg glog
251 $ hg glog
251 @ 23:6a5ddbcfb870 added bar
252 @ 23:6a5ddbcfb870 added bar
252 | stable (b1)
253 | stable (b1)
253 o 22:baedc6e98a67 Added e
254 o 22:baedc6e98a67 Added e
254 | stable ()
255 | stable ()
255 | o 21:99ac7bf8aad1 Added d
256 | o 21:99ac7bf8aad1 Added d
256 | | stable ()
257 | | stable ()
257 | o 20:0ecb4d39c4bd Added c
258 | o 20:0ecb4d39c4bd Added c
258 |/ stable ()
259 |/ stable ()
259 o 19:fd45b986b109 Added b
260 o 19:fd45b986b109 Added b
260 | stable ()
261 | stable ()
261 o 18:204d2769eca2 Added a
262 o 18:204d2769eca2 Added a
262 stable ()
263 stable ()
263
264
264 $ hg branches
265 $ hg branches
265 stable 23:6a5ddbcfb870
266 stable 23:6a5ddbcfb870
266
267
267 $ hg branch
268 $ hg branch
268 stable
269 stable
269
270
270 Changing to same branch is no-op
271 Changing to same branch is no-op
271
272
272 $ hg branch -r 19::21 stable
273 $ hg branch -r 19::21 stable
273 changed branch on 0 changesets
274 changed branch on 0 changesets
274
275
275 Changing branch name to existing branch name if the branch of parent of root of
276 Changing branch name to existing branch name if the branch of parent of root of
276 revs is same as the new branch name
277 revs is same as the new branch name
277
278
278 $ hg branch -r 20::21 bugfix
279 $ hg branch -r 20::21 bugfix
279 changed branch on 2 changesets
280 changed branch on 2 changesets
280 $ hg glog
281 $ hg glog
281 o 25:714defe1cf34 Added d
282 o 25:714defe1cf34 Added d
282 | bugfix ()
283 | bugfix ()
283 o 24:98394def28fc Added c
284 o 24:98394def28fc Added c
284 | bugfix ()
285 | bugfix ()
285 | @ 23:6a5ddbcfb870 added bar
286 | @ 23:6a5ddbcfb870 added bar
286 | | stable (b1)
287 | | stable (b1)
287 | o 22:baedc6e98a67 Added e
288 | o 22:baedc6e98a67 Added e
288 |/ stable ()
289 |/ stable ()
289 o 19:fd45b986b109 Added b
290 o 19:fd45b986b109 Added b
290 | stable ()
291 | stable ()
291 o 18:204d2769eca2 Added a
292 o 18:204d2769eca2 Added a
292 stable ()
293 stable ()
293
294
294 $ hg branch -r 24:25 stable
295 $ hg branch -r 24:25 stable
295 changed branch on 2 changesets
296 changed branch on 2 changesets
296 $ hg glog
297 $ hg glog
297 o 27:4ec342341562 Added d
298 o 27:4ec342341562 Added d
298 | stable ()
299 | stable ()
299 o 26:83f48859c2de Added c
300 o 26:83f48859c2de Added c
300 | stable ()
301 | stable ()
301 | @ 23:6a5ddbcfb870 added bar
302 | @ 23:6a5ddbcfb870 added bar
302 | | stable (b1)
303 | | stable (b1)
303 | o 22:baedc6e98a67 Added e
304 | o 22:baedc6e98a67 Added e
304 |/ stable ()
305 |/ stable ()
305 o 19:fd45b986b109 Added b
306 o 19:fd45b986b109 Added b
306 | stable ()
307 | stable ()
307 o 18:204d2769eca2 Added a
308 o 18:204d2769eca2 Added a
308 stable ()
309 stable ()
309
310
310 Testing on merge
311 Testing on merge
311
312
312 $ hg merge -r 26
313 $ hg merge -r 26
313 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
314 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
314 (branch merge, don't forget to commit)
315 (branch merge, don't forget to commit)
315
316
316 $ hg branch -r . abcd
317 $ hg branch -r . abcd
317 abort: outstanding uncommitted merge
318 abort: outstanding uncommitted merge
318 [255]
319 [255]
319 $ hg ci -m "Merge commit"
320 $ hg ci -m "Merge commit"
320 $ hg branch -r '(.^)::' def
321 $ hg branch -r '(.^)::' def
321 abort: cannot change branch of a merge commit
322 abort: cannot change branch of a merge commit
322 [255]
323 [255]
323
324
324 Changing branch on public changeset
325 Changing branch on public changeset
325
326
326 $ hg phase -r 27 -p
327 $ hg phase -r 27 -p
327 $ hg branch -r 27 def
328 $ hg branch -r 27 def
328 abort: cannot change branch of public changesets
329 abort: cannot change branch of public changesets
329 (see 'hg help phases' for details)
330 (see 'hg help phases' for details)
330 [255]
331 [255]
General Comments 0
You need to be logged in to leave comments. Login now