##// END OF EJS Templates
test-subrepo-recursion: more aggressively regex 'unzip -l' output for 10.10...
Matt Harbison -
r25610:37876ca0 default
parent child Browse files
Show More
@@ -1,573 +1,573 b''
1 Create test repository:
1 Create test repository:
2
2
3 $ hg init repo
3 $ hg init repo
4 $ cd repo
4 $ cd repo
5 $ echo x1 > x.txt
5 $ echo x1 > x.txt
6
6
7 $ hg init foo
7 $ hg init foo
8 $ cd foo
8 $ cd foo
9 $ echo y1 > y.txt
9 $ echo y1 > y.txt
10
10
11 $ hg init bar
11 $ hg init bar
12 $ cd bar
12 $ cd bar
13 $ echo z1 > z.txt
13 $ echo z1 > z.txt
14
14
15 $ cd ..
15 $ cd ..
16 $ echo 'bar = bar' > .hgsub
16 $ echo 'bar = bar' > .hgsub
17
17
18 $ cd ..
18 $ cd ..
19 $ echo 'foo = foo' > .hgsub
19 $ echo 'foo = foo' > .hgsub
20
20
21 Add files --- .hgsub files must go first to trigger subrepos:
21 Add files --- .hgsub files must go first to trigger subrepos:
22
22
23 $ hg add -S .hgsub
23 $ hg add -S .hgsub
24 $ hg add -S foo/.hgsub
24 $ hg add -S foo/.hgsub
25 $ hg add -S foo/bar
25 $ hg add -S foo/bar
26 adding foo/bar/z.txt (glob)
26 adding foo/bar/z.txt (glob)
27 $ hg add -S
27 $ hg add -S
28 adding x.txt
28 adding x.txt
29 adding foo/y.txt (glob)
29 adding foo/y.txt (glob)
30
30
31 Test recursive status without committing anything:
31 Test recursive status without committing anything:
32
32
33 $ hg status -S
33 $ hg status -S
34 A .hgsub
34 A .hgsub
35 A foo/.hgsub
35 A foo/.hgsub
36 A foo/bar/z.txt
36 A foo/bar/z.txt
37 A foo/y.txt
37 A foo/y.txt
38 A x.txt
38 A x.txt
39
39
40 Test recursive diff without committing anything:
40 Test recursive diff without committing anything:
41
41
42 $ hg diff --nodates -S foo
42 $ hg diff --nodates -S foo
43 diff -r 000000000000 foo/.hgsub
43 diff -r 000000000000 foo/.hgsub
44 --- /dev/null
44 --- /dev/null
45 +++ b/foo/.hgsub
45 +++ b/foo/.hgsub
46 @@ -0,0 +1,1 @@
46 @@ -0,0 +1,1 @@
47 +bar = bar
47 +bar = bar
48 diff -r 000000000000 foo/y.txt
48 diff -r 000000000000 foo/y.txt
49 --- /dev/null
49 --- /dev/null
50 +++ b/foo/y.txt
50 +++ b/foo/y.txt
51 @@ -0,0 +1,1 @@
51 @@ -0,0 +1,1 @@
52 +y1
52 +y1
53 diff -r 000000000000 foo/bar/z.txt
53 diff -r 000000000000 foo/bar/z.txt
54 --- /dev/null
54 --- /dev/null
55 +++ b/foo/bar/z.txt
55 +++ b/foo/bar/z.txt
56 @@ -0,0 +1,1 @@
56 @@ -0,0 +1,1 @@
57 +z1
57 +z1
58
58
59 Commits:
59 Commits:
60
60
61 $ hg commit -m fails
61 $ hg commit -m fails
62 abort: uncommitted changes in subrepository 'foo'
62 abort: uncommitted changes in subrepository 'foo'
63 (use --subrepos for recursive commit)
63 (use --subrepos for recursive commit)
64 [255]
64 [255]
65
65
66 The --subrepos flag overwrite the config setting:
66 The --subrepos flag overwrite the config setting:
67
67
68 $ hg commit -m 0-0-0 --config ui.commitsubrepos=No --subrepos
68 $ hg commit -m 0-0-0 --config ui.commitsubrepos=No --subrepos
69 committing subrepository foo
69 committing subrepository foo
70 committing subrepository foo/bar (glob)
70 committing subrepository foo/bar (glob)
71
71
72 $ cd foo
72 $ cd foo
73 $ echo y2 >> y.txt
73 $ echo y2 >> y.txt
74 $ hg commit -m 0-1-0
74 $ hg commit -m 0-1-0
75
75
76 $ cd bar
76 $ cd bar
77 $ echo z2 >> z.txt
77 $ echo z2 >> z.txt
78 $ hg commit -m 0-1-1
78 $ hg commit -m 0-1-1
79
79
80 $ cd ..
80 $ cd ..
81 $ hg commit -m 0-2-1
81 $ hg commit -m 0-2-1
82
82
83 $ cd ..
83 $ cd ..
84 $ hg commit -m 1-2-1
84 $ hg commit -m 1-2-1
85
85
86 Change working directory:
86 Change working directory:
87
87
88 $ echo y3 >> foo/y.txt
88 $ echo y3 >> foo/y.txt
89 $ echo z3 >> foo/bar/z.txt
89 $ echo z3 >> foo/bar/z.txt
90 $ hg status -S
90 $ hg status -S
91 M foo/bar/z.txt
91 M foo/bar/z.txt
92 M foo/y.txt
92 M foo/y.txt
93 $ hg diff --nodates -S
93 $ hg diff --nodates -S
94 diff -r d254738c5f5e foo/y.txt
94 diff -r d254738c5f5e foo/y.txt
95 --- a/foo/y.txt
95 --- a/foo/y.txt
96 +++ b/foo/y.txt
96 +++ b/foo/y.txt
97 @@ -1,2 +1,3 @@
97 @@ -1,2 +1,3 @@
98 y1
98 y1
99 y2
99 y2
100 +y3
100 +y3
101 diff -r 9647f22de499 foo/bar/z.txt
101 diff -r 9647f22de499 foo/bar/z.txt
102 --- a/foo/bar/z.txt
102 --- a/foo/bar/z.txt
103 +++ b/foo/bar/z.txt
103 +++ b/foo/bar/z.txt
104 @@ -1,2 +1,3 @@
104 @@ -1,2 +1,3 @@
105 z1
105 z1
106 z2
106 z2
107 +z3
107 +z3
108
108
109 Status call crossing repository boundaries:
109 Status call crossing repository boundaries:
110
110
111 $ hg status -S foo/bar/z.txt
111 $ hg status -S foo/bar/z.txt
112 M foo/bar/z.txt
112 M foo/bar/z.txt
113 $ hg status -S -I 'foo/?.txt'
113 $ hg status -S -I 'foo/?.txt'
114 M foo/y.txt
114 M foo/y.txt
115 $ hg status -S -I '**/?.txt'
115 $ hg status -S -I '**/?.txt'
116 M foo/bar/z.txt
116 M foo/bar/z.txt
117 M foo/y.txt
117 M foo/y.txt
118 $ hg diff --nodates -S -I '**/?.txt'
118 $ hg diff --nodates -S -I '**/?.txt'
119 diff -r d254738c5f5e foo/y.txt
119 diff -r d254738c5f5e foo/y.txt
120 --- a/foo/y.txt
120 --- a/foo/y.txt
121 +++ b/foo/y.txt
121 +++ b/foo/y.txt
122 @@ -1,2 +1,3 @@
122 @@ -1,2 +1,3 @@
123 y1
123 y1
124 y2
124 y2
125 +y3
125 +y3
126 diff -r 9647f22de499 foo/bar/z.txt
126 diff -r 9647f22de499 foo/bar/z.txt
127 --- a/foo/bar/z.txt
127 --- a/foo/bar/z.txt
128 +++ b/foo/bar/z.txt
128 +++ b/foo/bar/z.txt
129 @@ -1,2 +1,3 @@
129 @@ -1,2 +1,3 @@
130 z1
130 z1
131 z2
131 z2
132 +z3
132 +z3
133
133
134 Status from within a subdirectory:
134 Status from within a subdirectory:
135
135
136 $ mkdir dir
136 $ mkdir dir
137 $ cd dir
137 $ cd dir
138 $ echo a1 > a.txt
138 $ echo a1 > a.txt
139 $ hg status -S
139 $ hg status -S
140 M foo/bar/z.txt
140 M foo/bar/z.txt
141 M foo/y.txt
141 M foo/y.txt
142 ? dir/a.txt
142 ? dir/a.txt
143 $ hg diff --nodates -S
143 $ hg diff --nodates -S
144 diff -r d254738c5f5e foo/y.txt
144 diff -r d254738c5f5e foo/y.txt
145 --- a/foo/y.txt
145 --- a/foo/y.txt
146 +++ b/foo/y.txt
146 +++ b/foo/y.txt
147 @@ -1,2 +1,3 @@
147 @@ -1,2 +1,3 @@
148 y1
148 y1
149 y2
149 y2
150 +y3
150 +y3
151 diff -r 9647f22de499 foo/bar/z.txt
151 diff -r 9647f22de499 foo/bar/z.txt
152 --- a/foo/bar/z.txt
152 --- a/foo/bar/z.txt
153 +++ b/foo/bar/z.txt
153 +++ b/foo/bar/z.txt
154 @@ -1,2 +1,3 @@
154 @@ -1,2 +1,3 @@
155 z1
155 z1
156 z2
156 z2
157 +z3
157 +z3
158
158
159 Status with relative path:
159 Status with relative path:
160
160
161 $ hg status -S ..
161 $ hg status -S ..
162 M ../foo/bar/z.txt
162 M ../foo/bar/z.txt
163 M ../foo/y.txt
163 M ../foo/y.txt
164 ? a.txt
164 ? a.txt
165
165
166 XXX: filtering lfilesrepo.status() in 3.3-rc causes these files to be listed as
166 XXX: filtering lfilesrepo.status() in 3.3-rc causes these files to be listed as
167 added instead of modified.
167 added instead of modified.
168 $ hg status -S .. --config extensions.largefiles=
168 $ hg status -S .. --config extensions.largefiles=
169 M ../foo/bar/z.txt
169 M ../foo/bar/z.txt
170 M ../foo/y.txt
170 M ../foo/y.txt
171 ? a.txt
171 ? a.txt
172
172
173 $ hg diff --nodates -S ..
173 $ hg diff --nodates -S ..
174 diff -r d254738c5f5e foo/y.txt
174 diff -r d254738c5f5e foo/y.txt
175 --- a/foo/y.txt
175 --- a/foo/y.txt
176 +++ b/foo/y.txt
176 +++ b/foo/y.txt
177 @@ -1,2 +1,3 @@
177 @@ -1,2 +1,3 @@
178 y1
178 y1
179 y2
179 y2
180 +y3
180 +y3
181 diff -r 9647f22de499 foo/bar/z.txt
181 diff -r 9647f22de499 foo/bar/z.txt
182 --- a/foo/bar/z.txt
182 --- a/foo/bar/z.txt
183 +++ b/foo/bar/z.txt
183 +++ b/foo/bar/z.txt
184 @@ -1,2 +1,3 @@
184 @@ -1,2 +1,3 @@
185 z1
185 z1
186 z2
186 z2
187 +z3
187 +z3
188 $ cd ..
188 $ cd ..
189
189
190 Cleanup and final commit:
190 Cleanup and final commit:
191
191
192 $ rm -r dir
192 $ rm -r dir
193 $ hg commit --subrepos -m 2-3-2
193 $ hg commit --subrepos -m 2-3-2
194 committing subrepository foo
194 committing subrepository foo
195 committing subrepository foo/bar (glob)
195 committing subrepository foo/bar (glob)
196
196
197 Test explicit path commands within subrepos: add/forget
197 Test explicit path commands within subrepos: add/forget
198 $ echo z1 > foo/bar/z2.txt
198 $ echo z1 > foo/bar/z2.txt
199 $ hg status -S
199 $ hg status -S
200 ? foo/bar/z2.txt
200 ? foo/bar/z2.txt
201 $ hg add foo/bar/z2.txt
201 $ hg add foo/bar/z2.txt
202 $ hg status -S
202 $ hg status -S
203 A foo/bar/z2.txt
203 A foo/bar/z2.txt
204 $ hg forget foo/bar/z2.txt
204 $ hg forget foo/bar/z2.txt
205 $ hg status -S
205 $ hg status -S
206 ? foo/bar/z2.txt
206 ? foo/bar/z2.txt
207 $ hg forget foo/bar/z2.txt
207 $ hg forget foo/bar/z2.txt
208 not removing foo/bar/z2.txt: file is already untracked (glob)
208 not removing foo/bar/z2.txt: file is already untracked (glob)
209 [1]
209 [1]
210 $ hg status -S
210 $ hg status -S
211 ? foo/bar/z2.txt
211 ? foo/bar/z2.txt
212 $ rm foo/bar/z2.txt
212 $ rm foo/bar/z2.txt
213
213
214 Log with the relationships between repo and its subrepo:
214 Log with the relationships between repo and its subrepo:
215
215
216 $ hg log --template '{rev}:{node|short} {desc}\n'
216 $ hg log --template '{rev}:{node|short} {desc}\n'
217 2:1326fa26d0c0 2-3-2
217 2:1326fa26d0c0 2-3-2
218 1:4b3c9ff4f66b 1-2-1
218 1:4b3c9ff4f66b 1-2-1
219 0:23376cbba0d8 0-0-0
219 0:23376cbba0d8 0-0-0
220
220
221 $ hg -R foo log --template '{rev}:{node|short} {desc}\n'
221 $ hg -R foo log --template '{rev}:{node|short} {desc}\n'
222 3:65903cebad86 2-3-2
222 3:65903cebad86 2-3-2
223 2:d254738c5f5e 0-2-1
223 2:d254738c5f5e 0-2-1
224 1:8629ce7dcc39 0-1-0
224 1:8629ce7dcc39 0-1-0
225 0:af048e97ade2 0-0-0
225 0:af048e97ade2 0-0-0
226
226
227 $ hg -R foo/bar log --template '{rev}:{node|short} {desc}\n'
227 $ hg -R foo/bar log --template '{rev}:{node|short} {desc}\n'
228 2:31ecbdafd357 2-3-2
228 2:31ecbdafd357 2-3-2
229 1:9647f22de499 0-1-1
229 1:9647f22de499 0-1-1
230 0:4904098473f9 0-0-0
230 0:4904098473f9 0-0-0
231
231
232 Status between revisions:
232 Status between revisions:
233
233
234 $ hg status -S
234 $ hg status -S
235 $ hg status -S --rev 0:1
235 $ hg status -S --rev 0:1
236 M .hgsubstate
236 M .hgsubstate
237 M foo/.hgsubstate
237 M foo/.hgsubstate
238 M foo/bar/z.txt
238 M foo/bar/z.txt
239 M foo/y.txt
239 M foo/y.txt
240 $ hg diff --nodates -S -I '**/?.txt' --rev 0:1
240 $ hg diff --nodates -S -I '**/?.txt' --rev 0:1
241 diff -r af048e97ade2 -r d254738c5f5e foo/y.txt
241 diff -r af048e97ade2 -r d254738c5f5e foo/y.txt
242 --- a/foo/y.txt
242 --- a/foo/y.txt
243 +++ b/foo/y.txt
243 +++ b/foo/y.txt
244 @@ -1,1 +1,2 @@
244 @@ -1,1 +1,2 @@
245 y1
245 y1
246 +y2
246 +y2
247 diff -r 4904098473f9 -r 9647f22de499 foo/bar/z.txt
247 diff -r 4904098473f9 -r 9647f22de499 foo/bar/z.txt
248 --- a/foo/bar/z.txt
248 --- a/foo/bar/z.txt
249 +++ b/foo/bar/z.txt
249 +++ b/foo/bar/z.txt
250 @@ -1,1 +1,2 @@
250 @@ -1,1 +1,2 @@
251 z1
251 z1
252 +z2
252 +z2
253
253
254 Enable progress extension for archive tests:
254 Enable progress extension for archive tests:
255
255
256 $ cp $HGRCPATH $HGRCPATH.no-progress
256 $ cp $HGRCPATH $HGRCPATH.no-progress
257 $ cat >> $HGRCPATH <<EOF
257 $ cat >> $HGRCPATH <<EOF
258 > [extensions]
258 > [extensions]
259 > progress =
259 > progress =
260 > [progress]
260 > [progress]
261 > disable=False
261 > disable=False
262 > assume-tty = 1
262 > assume-tty = 1
263 > delay = 0
263 > delay = 0
264 > # set changedelay really large so we don't see nested topics
264 > # set changedelay really large so we don't see nested topics
265 > changedelay = 30000
265 > changedelay = 30000
266 > format = topic bar number
266 > format = topic bar number
267 > refresh = 0
267 > refresh = 0
268 > width = 60
268 > width = 60
269 > EOF
269 > EOF
270
270
271 Test archiving to a directory tree (the doubled lines in the output
271 Test archiving to a directory tree (the doubled lines in the output
272 only show up in the test output, not in real usage):
272 only show up in the test output, not in real usage):
273
273
274 $ hg archive --subrepos ../archive
274 $ hg archive --subrepos ../archive
275 \r (no-eol) (esc)
275 \r (no-eol) (esc)
276 archiving [ ] 0/3\r (no-eol) (esc)
276 archiving [ ] 0/3\r (no-eol) (esc)
277 archiving [=============> ] 1/3\r (no-eol) (esc)
277 archiving [=============> ] 1/3\r (no-eol) (esc)
278 archiving [===========================> ] 2/3\r (no-eol) (esc)
278 archiving [===========================> ] 2/3\r (no-eol) (esc)
279 archiving [==========================================>] 3/3\r (no-eol) (esc)
279 archiving [==========================================>] 3/3\r (no-eol) (esc)
280 \r (no-eol) (esc)
280 \r (no-eol) (esc)
281 \r (no-eol) (esc)
281 \r (no-eol) (esc)
282 archiving (foo) [ ] 0/3\r (no-eol) (esc)
282 archiving (foo) [ ] 0/3\r (no-eol) (esc)
283 archiving (foo) [===========> ] 1/3\r (no-eol) (esc)
283 archiving (foo) [===========> ] 1/3\r (no-eol) (esc)
284 archiving (foo) [=======================> ] 2/3\r (no-eol) (esc)
284 archiving (foo) [=======================> ] 2/3\r (no-eol) (esc)
285 archiving (foo) [====================================>] 3/3\r (no-eol) (esc)
285 archiving (foo) [====================================>] 3/3\r (no-eol) (esc)
286 \r (no-eol) (esc)
286 \r (no-eol) (esc)
287 \r (no-eol) (esc)
287 \r (no-eol) (esc)
288 archiving (foo/bar) [ ] 0/1\r (no-eol) (glob) (esc)
288 archiving (foo/bar) [ ] 0/1\r (no-eol) (glob) (esc)
289 archiving (foo/bar) [================================>] 1/1\r (no-eol) (glob) (esc)
289 archiving (foo/bar) [================================>] 1/1\r (no-eol) (glob) (esc)
290 \r (no-eol) (esc)
290 \r (no-eol) (esc)
291 $ find ../archive | sort
291 $ find ../archive | sort
292 ../archive
292 ../archive
293 ../archive/.hg_archival.txt
293 ../archive/.hg_archival.txt
294 ../archive/.hgsub
294 ../archive/.hgsub
295 ../archive/.hgsubstate
295 ../archive/.hgsubstate
296 ../archive/foo
296 ../archive/foo
297 ../archive/foo/.hgsub
297 ../archive/foo/.hgsub
298 ../archive/foo/.hgsubstate
298 ../archive/foo/.hgsubstate
299 ../archive/foo/bar
299 ../archive/foo/bar
300 ../archive/foo/bar/z.txt
300 ../archive/foo/bar/z.txt
301 ../archive/foo/y.txt
301 ../archive/foo/y.txt
302 ../archive/x.txt
302 ../archive/x.txt
303
303
304 Test archiving to zip file (unzip output is unstable):
304 Test archiving to zip file (unzip output is unstable):
305
305
306 $ hg archive --subrepos --prefix '.' ../archive.zip
306 $ hg archive --subrepos --prefix '.' ../archive.zip
307 \r (no-eol) (esc)
307 \r (no-eol) (esc)
308 archiving [ ] 0/3\r (no-eol) (esc)
308 archiving [ ] 0/3\r (no-eol) (esc)
309 archiving [=============> ] 1/3\r (no-eol) (esc)
309 archiving [=============> ] 1/3\r (no-eol) (esc)
310 archiving [===========================> ] 2/3\r (no-eol) (esc)
310 archiving [===========================> ] 2/3\r (no-eol) (esc)
311 archiving [==========================================>] 3/3\r (no-eol) (esc)
311 archiving [==========================================>] 3/3\r (no-eol) (esc)
312 \r (no-eol) (esc)
312 \r (no-eol) (esc)
313 \r (no-eol) (esc)
313 \r (no-eol) (esc)
314 archiving (foo) [ ] 0/3\r (no-eol) (esc)
314 archiving (foo) [ ] 0/3\r (no-eol) (esc)
315 archiving (foo) [===========> ] 1/3\r (no-eol) (esc)
315 archiving (foo) [===========> ] 1/3\r (no-eol) (esc)
316 archiving (foo) [=======================> ] 2/3\r (no-eol) (esc)
316 archiving (foo) [=======================> ] 2/3\r (no-eol) (esc)
317 archiving (foo) [====================================>] 3/3\r (no-eol) (esc)
317 archiving (foo) [====================================>] 3/3\r (no-eol) (esc)
318 \r (no-eol) (esc)
318 \r (no-eol) (esc)
319 \r (no-eol) (esc)
319 \r (no-eol) (esc)
320 archiving (foo/bar) [ ] 0/1\r (no-eol) (glob) (esc)
320 archiving (foo/bar) [ ] 0/1\r (no-eol) (glob) (esc)
321 archiving (foo/bar) [================================>] 1/1\r (no-eol) (glob) (esc)
321 archiving (foo/bar) [================================>] 1/1\r (no-eol) (glob) (esc)
322 \r (no-eol) (esc)
322 \r (no-eol) (esc)
323
323
324 (unzip date formating is unstable, we do not care about it and glob it out)
324 (unzip date formating is unstable, we do not care about it and glob it out)
325
325
326 $ unzip -l ../archive.zip
326 $ unzip -l ../archive.zip
327 Archive: ../archive.zip
327 Archive: ../archive.zip
328 Length Date Time Name
328 Length [ ]* Date [ ]* Time [ ]* Name (re)
329 --------- ---------- ----- ----
329 [\- ]* (re)
330 172 ?????????? 00:00 .hg_archival.txt (glob)
330 172 [0-9:\- ]* .hg_archival.txt (re)
331 10 ?????????? 00:00 .hgsub (glob)
331 10 [0-9:\- ]* .hgsub (re)
332 45 ?????????? 00:00 .hgsubstate (glob)
332 45 [0-9:\- ]* .hgsubstate (re)
333 3 ?????????? 00:00 x.txt (glob)
333 3 [0-9:\- ]* x.txt (re)
334 10 ?????????? 00:00 foo/.hgsub (glob)
334 10 [0-9:\- ]* foo/.hgsub (re)
335 45 ?????????? 00:00 foo/.hgsubstate (glob)
335 45 [0-9:\- ]* foo/.hgsubstate (re)
336 9 ?????????? 00:00 foo/y.txt (glob)
336 9 [0-9:\- ]* foo/y.txt (re)
337 9 ?????????? 00:00 foo/bar/z.txt (glob)
337 9 [0-9:\- ]* foo/bar/z.txt (re)
338 --------- -------
338 [\- ]* (re)
339 303 8 files
339 303 [ ]* 8 files (re)
340
340
341 Test archiving a revision that references a subrepo that is not yet
341 Test archiving a revision that references a subrepo that is not yet
342 cloned:
342 cloned:
343
343
344 #if hardlink
344 #if hardlink
345 $ hg clone -U . ../empty
345 $ hg clone -U . ../empty
346 \r (no-eol) (esc)
346 \r (no-eol) (esc)
347 linking [ <=> ] 1\r (no-eol) (esc)
347 linking [ <=> ] 1\r (no-eol) (esc)
348 linking [ <=> ] 2\r (no-eol) (esc)
348 linking [ <=> ] 2\r (no-eol) (esc)
349 linking [ <=> ] 3\r (no-eol) (esc)
349 linking [ <=> ] 3\r (no-eol) (esc)
350 linking [ <=> ] 4\r (no-eol) (esc)
350 linking [ <=> ] 4\r (no-eol) (esc)
351 linking [ <=> ] 5\r (no-eol) (esc)
351 linking [ <=> ] 5\r (no-eol) (esc)
352 linking [ <=> ] 6\r (no-eol) (esc)
352 linking [ <=> ] 6\r (no-eol) (esc)
353 linking [ <=> ] 7\r (no-eol) (esc)
353 linking [ <=> ] 7\r (no-eol) (esc)
354 linking [ <=> ] 8\r (no-eol) (esc)
354 linking [ <=> ] 8\r (no-eol) (esc)
355 \r (no-eol) (esc)
355 \r (no-eol) (esc)
356 #else
356 #else
357 $ hg clone -U . ../empty
357 $ hg clone -U . ../empty
358 \r (no-eol) (esc)
358 \r (no-eol) (esc)
359 linking [ <=> ] 1 (no-eol)
359 linking [ <=> ] 1 (no-eol)
360 #endif
360 #endif
361
361
362 $ cd ../empty
362 $ cd ../empty
363 #if hardlink
363 #if hardlink
364 $ hg archive --subrepos -r tip --prefix './' ../archive.tar.gz
364 $ hg archive --subrepos -r tip --prefix './' ../archive.tar.gz
365 \r (no-eol) (esc)
365 \r (no-eol) (esc)
366 archiving [ ] 0/3\r (no-eol) (esc)
366 archiving [ ] 0/3\r (no-eol) (esc)
367 archiving [=============> ] 1/3\r (no-eol) (esc)
367 archiving [=============> ] 1/3\r (no-eol) (esc)
368 archiving [===========================> ] 2/3\r (no-eol) (esc)
368 archiving [===========================> ] 2/3\r (no-eol) (esc)
369 archiving [==========================================>] 3/3\r (no-eol) (esc)
369 archiving [==========================================>] 3/3\r (no-eol) (esc)
370 \r (no-eol) (esc)
370 \r (no-eol) (esc)
371 \r (no-eol) (esc)
371 \r (no-eol) (esc)
372 linking [ <=> ] 1\r (no-eol) (esc)
372 linking [ <=> ] 1\r (no-eol) (esc)
373 linking [ <=> ] 2\r (no-eol) (esc)
373 linking [ <=> ] 2\r (no-eol) (esc)
374 linking [ <=> ] 3\r (no-eol) (esc)
374 linking [ <=> ] 3\r (no-eol) (esc)
375 linking [ <=> ] 4\r (no-eol) (esc)
375 linking [ <=> ] 4\r (no-eol) (esc)
376 linking [ <=> ] 5\r (no-eol) (esc)
376 linking [ <=> ] 5\r (no-eol) (esc)
377 linking [ <=> ] 6\r (no-eol) (esc)
377 linking [ <=> ] 6\r (no-eol) (esc)
378 linking [ <=> ] 7\r (no-eol) (esc)
378 linking [ <=> ] 7\r (no-eol) (esc)
379 linking [ <=> ] 8\r (no-eol) (esc)
379 linking [ <=> ] 8\r (no-eol) (esc)
380 \r (no-eol) (esc)
380 \r (no-eol) (esc)
381 \r (no-eol) (esc)
381 \r (no-eol) (esc)
382 archiving (foo) [ ] 0/3\r (no-eol) (esc)
382 archiving (foo) [ ] 0/3\r (no-eol) (esc)
383 archiving (foo) [===========> ] 1/3\r (no-eol) (esc)
383 archiving (foo) [===========> ] 1/3\r (no-eol) (esc)
384 archiving (foo) [=======================> ] 2/3\r (no-eol) (esc)
384 archiving (foo) [=======================> ] 2/3\r (no-eol) (esc)
385 archiving (foo) [====================================>] 3/3\r (no-eol) (esc)
385 archiving (foo) [====================================>] 3/3\r (no-eol) (esc)
386 \r (no-eol) (esc)
386 \r (no-eol) (esc)
387 \r (no-eol) (esc)
387 \r (no-eol) (esc)
388 linking [ <=> ] 1\r (no-eol) (esc)
388 linking [ <=> ] 1\r (no-eol) (esc)
389 linking [ <=> ] 2\r (no-eol) (esc)
389 linking [ <=> ] 2\r (no-eol) (esc)
390 linking [ <=> ] 3\r (no-eol) (esc)
390 linking [ <=> ] 3\r (no-eol) (esc)
391 linking [ <=> ] 4\r (no-eol) (esc)
391 linking [ <=> ] 4\r (no-eol) (esc)
392 linking [ <=> ] 5\r (no-eol) (esc)
392 linking [ <=> ] 5\r (no-eol) (esc)
393 linking [ <=> ] 6\r (no-eol) (esc)
393 linking [ <=> ] 6\r (no-eol) (esc)
394 \r (no-eol) (esc)
394 \r (no-eol) (esc)
395 \r (no-eol) (esc)
395 \r (no-eol) (esc)
396 archiving (foo/bar) [ ] 0/1\r (no-eol) (glob) (esc)
396 archiving (foo/bar) [ ] 0/1\r (no-eol) (glob) (esc)
397 archiving (foo/bar) [================================>] 1/1\r (no-eol) (glob) (esc)
397 archiving (foo/bar) [================================>] 1/1\r (no-eol) (glob) (esc)
398 \r (no-eol) (esc)
398 \r (no-eol) (esc)
399 cloning subrepo foo from $TESTTMP/repo/foo
399 cloning subrepo foo from $TESTTMP/repo/foo
400 cloning subrepo foo/bar from $TESTTMP/repo/foo/bar (glob)
400 cloning subrepo foo/bar from $TESTTMP/repo/foo/bar (glob)
401 #else
401 #else
402 Note there's a slight output glitch on non-hardlink systems: the last
402 Note there's a slight output glitch on non-hardlink systems: the last
403 "linking" progress topic never gets closed, leading to slight output corruption on that platform.
403 "linking" progress topic never gets closed, leading to slight output corruption on that platform.
404 $ hg archive --subrepos -r tip --prefix './' ../archive.tar.gz
404 $ hg archive --subrepos -r tip --prefix './' ../archive.tar.gz
405 \r (no-eol) (esc)
405 \r (no-eol) (esc)
406 archiving [ ] 0/3\r (no-eol) (esc)
406 archiving [ ] 0/3\r (no-eol) (esc)
407 archiving [=============> ] 1/3\r (no-eol) (esc)
407 archiving [=============> ] 1/3\r (no-eol) (esc)
408 archiving [===========================> ] 2/3\r (no-eol) (esc)
408 archiving [===========================> ] 2/3\r (no-eol) (esc)
409 archiving [==========================================>] 3/3\r (no-eol) (esc)
409 archiving [==========================================>] 3/3\r (no-eol) (esc)
410 \r (no-eol) (esc)
410 \r (no-eol) (esc)
411 \r (no-eol) (esc)
411 \r (no-eol) (esc)
412 linking [ <=> ] 1\r (no-eol) (esc)
412 linking [ <=> ] 1\r (no-eol) (esc)
413 \r (no-eol) (esc)
413 \r (no-eol) (esc)
414 \r (no-eol) (esc)
414 \r (no-eol) (esc)
415 linking [ <=> ] 1cloning subrepo foo from $TESTTMP/repo/foo
415 linking [ <=> ] 1cloning subrepo foo from $TESTTMP/repo/foo
416 cloning subrepo foo/bar from $TESTTMP/repo/foo/bar (glob)
416 cloning subrepo foo/bar from $TESTTMP/repo/foo/bar (glob)
417 #endif
417 #endif
418
418
419 Archive + subrepos uses '/' for all component separators
419 Archive + subrepos uses '/' for all component separators
420
420
421 $ tar -tzf ../archive.tar.gz | sort
421 $ tar -tzf ../archive.tar.gz | sort
422 .hg_archival.txt
422 .hg_archival.txt
423 .hgsub
423 .hgsub
424 .hgsubstate
424 .hgsubstate
425 foo/.hgsub
425 foo/.hgsub
426 foo/.hgsubstate
426 foo/.hgsubstate
427 foo/bar/z.txt
427 foo/bar/z.txt
428 foo/y.txt
428 foo/y.txt
429 x.txt
429 x.txt
430
430
431 The newly cloned subrepos contain no working copy:
431 The newly cloned subrepos contain no working copy:
432
432
433 $ hg -R foo summary
433 $ hg -R foo summary
434 parent: -1:000000000000 (no revision checked out)
434 parent: -1:000000000000 (no revision checked out)
435 branch: default
435 branch: default
436 commit: (clean)
436 commit: (clean)
437 update: 4 new changesets (update)
437 update: 4 new changesets (update)
438
438
439 Disable progress extension and cleanup:
439 Disable progress extension and cleanup:
440
440
441 $ mv $HGRCPATH.no-progress $HGRCPATH
441 $ mv $HGRCPATH.no-progress $HGRCPATH
442
442
443 Test archiving when there is a directory in the way for a subrepo
443 Test archiving when there is a directory in the way for a subrepo
444 created by archive:
444 created by archive:
445
445
446 $ hg clone -U . ../almost-empty
446 $ hg clone -U . ../almost-empty
447 $ cd ../almost-empty
447 $ cd ../almost-empty
448 $ mkdir foo
448 $ mkdir foo
449 $ echo f > foo/f
449 $ echo f > foo/f
450 $ hg archive --subrepos -r tip archive
450 $ hg archive --subrepos -r tip archive
451 cloning subrepo foo from $TESTTMP/empty/foo
451 cloning subrepo foo from $TESTTMP/empty/foo
452 abort: destination '$TESTTMP/almost-empty/foo' is not empty (in subrepo foo) (glob)
452 abort: destination '$TESTTMP/almost-empty/foo' is not empty (in subrepo foo) (glob)
453 [255]
453 [255]
454
454
455 Clone and test outgoing:
455 Clone and test outgoing:
456
456
457 $ cd ..
457 $ cd ..
458 $ hg clone repo repo2
458 $ hg clone repo repo2
459 updating to branch default
459 updating to branch default
460 cloning subrepo foo from $TESTTMP/repo/foo
460 cloning subrepo foo from $TESTTMP/repo/foo
461 cloning subrepo foo/bar from $TESTTMP/repo/foo/bar (glob)
461 cloning subrepo foo/bar from $TESTTMP/repo/foo/bar (glob)
462 3 files updated, 0 files merged, 0 files removed, 0 files unresolved
462 3 files updated, 0 files merged, 0 files removed, 0 files unresolved
463 $ cd repo2
463 $ cd repo2
464 $ hg outgoing -S
464 $ hg outgoing -S
465 comparing with $TESTTMP/repo (glob)
465 comparing with $TESTTMP/repo (glob)
466 searching for changes
466 searching for changes
467 no changes found
467 no changes found
468 comparing with $TESTTMP/repo/foo
468 comparing with $TESTTMP/repo/foo
469 searching for changes
469 searching for changes
470 no changes found
470 no changes found
471 comparing with $TESTTMP/repo/foo/bar
471 comparing with $TESTTMP/repo/foo/bar
472 searching for changes
472 searching for changes
473 no changes found
473 no changes found
474 [1]
474 [1]
475
475
476 Make nested change:
476 Make nested change:
477
477
478 $ echo y4 >> foo/y.txt
478 $ echo y4 >> foo/y.txt
479 $ hg diff --nodates -S
479 $ hg diff --nodates -S
480 diff -r 65903cebad86 foo/y.txt
480 diff -r 65903cebad86 foo/y.txt
481 --- a/foo/y.txt
481 --- a/foo/y.txt
482 +++ b/foo/y.txt
482 +++ b/foo/y.txt
483 @@ -1,3 +1,4 @@
483 @@ -1,3 +1,4 @@
484 y1
484 y1
485 y2
485 y2
486 y3
486 y3
487 +y4
487 +y4
488 $ hg commit --subrepos -m 3-4-2
488 $ hg commit --subrepos -m 3-4-2
489 committing subrepository foo
489 committing subrepository foo
490 $ hg outgoing -S
490 $ hg outgoing -S
491 comparing with $TESTTMP/repo (glob)
491 comparing with $TESTTMP/repo (glob)
492 searching for changes
492 searching for changes
493 changeset: 3:2655b8ecc4ee
493 changeset: 3:2655b8ecc4ee
494 tag: tip
494 tag: tip
495 user: test
495 user: test
496 date: Thu Jan 01 00:00:00 1970 +0000
496 date: Thu Jan 01 00:00:00 1970 +0000
497 summary: 3-4-2
497 summary: 3-4-2
498
498
499 comparing with $TESTTMP/repo/foo
499 comparing with $TESTTMP/repo/foo
500 searching for changes
500 searching for changes
501 changeset: 4:e96193d6cb36
501 changeset: 4:e96193d6cb36
502 tag: tip
502 tag: tip
503 user: test
503 user: test
504 date: Thu Jan 01 00:00:00 1970 +0000
504 date: Thu Jan 01 00:00:00 1970 +0000
505 summary: 3-4-2
505 summary: 3-4-2
506
506
507 comparing with $TESTTMP/repo/foo/bar
507 comparing with $TESTTMP/repo/foo/bar
508 searching for changes
508 searching for changes
509 no changes found
509 no changes found
510
510
511
511
512 Switch to original repo and setup default path:
512 Switch to original repo and setup default path:
513
513
514 $ cd ../repo
514 $ cd ../repo
515 $ echo '[paths]' >> .hg/hgrc
515 $ echo '[paths]' >> .hg/hgrc
516 $ echo 'default = ../repo2' >> .hg/hgrc
516 $ echo 'default = ../repo2' >> .hg/hgrc
517
517
518 Test incoming:
518 Test incoming:
519
519
520 $ hg incoming -S
520 $ hg incoming -S
521 comparing with $TESTTMP/repo2 (glob)
521 comparing with $TESTTMP/repo2 (glob)
522 searching for changes
522 searching for changes
523 changeset: 3:2655b8ecc4ee
523 changeset: 3:2655b8ecc4ee
524 tag: tip
524 tag: tip
525 user: test
525 user: test
526 date: Thu Jan 01 00:00:00 1970 +0000
526 date: Thu Jan 01 00:00:00 1970 +0000
527 summary: 3-4-2
527 summary: 3-4-2
528
528
529 comparing with $TESTTMP/repo2/foo
529 comparing with $TESTTMP/repo2/foo
530 searching for changes
530 searching for changes
531 changeset: 4:e96193d6cb36
531 changeset: 4:e96193d6cb36
532 tag: tip
532 tag: tip
533 user: test
533 user: test
534 date: Thu Jan 01 00:00:00 1970 +0000
534 date: Thu Jan 01 00:00:00 1970 +0000
535 summary: 3-4-2
535 summary: 3-4-2
536
536
537 comparing with $TESTTMP/repo2/foo/bar
537 comparing with $TESTTMP/repo2/foo/bar
538 searching for changes
538 searching for changes
539 no changes found
539 no changes found
540
540
541 $ hg incoming -S --bundle incoming.hg
541 $ hg incoming -S --bundle incoming.hg
542 abort: cannot combine --bundle and --subrepos
542 abort: cannot combine --bundle and --subrepos
543 [255]
543 [255]
544
544
545 Test missing subrepo:
545 Test missing subrepo:
546
546
547 $ rm -r foo
547 $ rm -r foo
548 $ hg status -S
548 $ hg status -S
549 warning: error "unknown revision '65903cebad86f1a84bd4f1134f62fa7dcb7a1c98'" in subrepository "foo"
549 warning: error "unknown revision '65903cebad86f1a84bd4f1134f62fa7dcb7a1c98'" in subrepository "foo"
550
550
551 Issue2619: IndexError: list index out of range on hg add with subrepos
551 Issue2619: IndexError: list index out of range on hg add with subrepos
552 The subrepo must sorts after the explicit filename.
552 The subrepo must sorts after the explicit filename.
553
553
554 $ cd ..
554 $ cd ..
555 $ hg init test
555 $ hg init test
556 $ cd test
556 $ cd test
557 $ hg init x
557 $ hg init x
558 $ echo abc > abc.txt
558 $ echo abc > abc.txt
559 $ hg ci -Am "abc"
559 $ hg ci -Am "abc"
560 adding abc.txt
560 adding abc.txt
561 $ echo "x = x" >> .hgsub
561 $ echo "x = x" >> .hgsub
562 $ hg add .hgsub
562 $ hg add .hgsub
563 $ touch a x/a
563 $ touch a x/a
564 $ hg add a x/a
564 $ hg add a x/a
565
565
566 $ hg ci -Sm "added x"
566 $ hg ci -Sm "added x"
567 committing subrepository x
567 committing subrepository x
568 $ echo abc > x/a
568 $ echo abc > x/a
569 $ hg revert --rev '.^' "set:subrepo('glob:x*')"
569 $ hg revert --rev '.^' "set:subrepo('glob:x*')"
570 abort: subrepository 'x' does not exist in 25ac2c9b3180!
570 abort: subrepository 'x' does not exist in 25ac2c9b3180!
571 [255]
571 [255]
572
572
573 $ cd ..
573 $ cd ..
General Comments 0
You need to be logged in to leave comments. Login now