##// END OF EJS Templates
strip: add a --keep test related to removing files from dirstate...
Christian Delahousse -
r27177:e76b27a6 default
parent child Browse files
Show More
@@ -1,854 +1,861 b''
1 $ echo "[format]" >> $HGRCPATH
1 $ echo "[format]" >> $HGRCPATH
2 $ echo "usegeneraldelta=yes" >> $HGRCPATH
2 $ echo "usegeneraldelta=yes" >> $HGRCPATH
3 $ echo "[extensions]" >> $HGRCPATH
3 $ echo "[extensions]" >> $HGRCPATH
4 $ echo "strip=" >> $HGRCPATH
4 $ echo "strip=" >> $HGRCPATH
5
5
6 $ restore() {
6 $ restore() {
7 > hg unbundle -q .hg/strip-backup/*
7 > hg unbundle -q .hg/strip-backup/*
8 > rm .hg/strip-backup/*
8 > rm .hg/strip-backup/*
9 > }
9 > }
10 $ teststrip() {
10 $ teststrip() {
11 > hg up -C $1
11 > hg up -C $1
12 > echo % before update $1, strip $2
12 > echo % before update $1, strip $2
13 > hg parents
13 > hg parents
14 > hg --traceback strip $2
14 > hg --traceback strip $2
15 > echo % after update $1, strip $2
15 > echo % after update $1, strip $2
16 > hg parents
16 > hg parents
17 > restore
17 > restore
18 > }
18 > }
19
19
20 $ hg init test
20 $ hg init test
21 $ cd test
21 $ cd test
22
22
23 $ echo foo > bar
23 $ echo foo > bar
24 $ hg ci -Ama
24 $ hg ci -Ama
25 adding bar
25 adding bar
26
26
27 $ echo more >> bar
27 $ echo more >> bar
28 $ hg ci -Amb
28 $ hg ci -Amb
29
29
30 $ echo blah >> bar
30 $ echo blah >> bar
31 $ hg ci -Amc
31 $ hg ci -Amc
32
32
33 $ hg up 1
33 $ hg up 1
34 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
34 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
35 $ echo blah >> bar
35 $ echo blah >> bar
36 $ hg ci -Amd
36 $ hg ci -Amd
37 created new head
37 created new head
38
38
39 $ echo final >> bar
39 $ echo final >> bar
40 $ hg ci -Ame
40 $ hg ci -Ame
41
41
42 $ hg log
42 $ hg log
43 changeset: 4:443431ffac4f
43 changeset: 4:443431ffac4f
44 tag: tip
44 tag: tip
45 user: test
45 user: test
46 date: Thu Jan 01 00:00:00 1970 +0000
46 date: Thu Jan 01 00:00:00 1970 +0000
47 summary: e
47 summary: e
48
48
49 changeset: 3:65bd5f99a4a3
49 changeset: 3:65bd5f99a4a3
50 parent: 1:ef3a871183d7
50 parent: 1:ef3a871183d7
51 user: test
51 user: test
52 date: Thu Jan 01 00:00:00 1970 +0000
52 date: Thu Jan 01 00:00:00 1970 +0000
53 summary: d
53 summary: d
54
54
55 changeset: 2:264128213d29
55 changeset: 2:264128213d29
56 user: test
56 user: test
57 date: Thu Jan 01 00:00:00 1970 +0000
57 date: Thu Jan 01 00:00:00 1970 +0000
58 summary: c
58 summary: c
59
59
60 changeset: 1:ef3a871183d7
60 changeset: 1:ef3a871183d7
61 user: test
61 user: test
62 date: Thu Jan 01 00:00:00 1970 +0000
62 date: Thu Jan 01 00:00:00 1970 +0000
63 summary: b
63 summary: b
64
64
65 changeset: 0:9ab35a2d17cb
65 changeset: 0:9ab35a2d17cb
66 user: test
66 user: test
67 date: Thu Jan 01 00:00:00 1970 +0000
67 date: Thu Jan 01 00:00:00 1970 +0000
68 summary: a
68 summary: a
69
69
70
70
71 $ teststrip 4 4
71 $ teststrip 4 4
72 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
72 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
73 % before update 4, strip 4
73 % before update 4, strip 4
74 changeset: 4:443431ffac4f
74 changeset: 4:443431ffac4f
75 tag: tip
75 tag: tip
76 user: test
76 user: test
77 date: Thu Jan 01 00:00:00 1970 +0000
77 date: Thu Jan 01 00:00:00 1970 +0000
78 summary: e
78 summary: e
79
79
80 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
80 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
81 saved backup bundle to $TESTTMP/test/.hg/strip-backup/*-backup.hg (glob)
81 saved backup bundle to $TESTTMP/test/.hg/strip-backup/*-backup.hg (glob)
82 % after update 4, strip 4
82 % after update 4, strip 4
83 changeset: 3:65bd5f99a4a3
83 changeset: 3:65bd5f99a4a3
84 tag: tip
84 tag: tip
85 parent: 1:ef3a871183d7
85 parent: 1:ef3a871183d7
86 user: test
86 user: test
87 date: Thu Jan 01 00:00:00 1970 +0000
87 date: Thu Jan 01 00:00:00 1970 +0000
88 summary: d
88 summary: d
89
89
90 $ teststrip 4 3
90 $ teststrip 4 3
91 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
91 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
92 % before update 4, strip 3
92 % before update 4, strip 3
93 changeset: 4:443431ffac4f
93 changeset: 4:443431ffac4f
94 tag: tip
94 tag: tip
95 user: test
95 user: test
96 date: Thu Jan 01 00:00:00 1970 +0000
96 date: Thu Jan 01 00:00:00 1970 +0000
97 summary: e
97 summary: e
98
98
99 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
99 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
100 saved backup bundle to $TESTTMP/test/.hg/strip-backup/*-backup.hg (glob)
100 saved backup bundle to $TESTTMP/test/.hg/strip-backup/*-backup.hg (glob)
101 % after update 4, strip 3
101 % after update 4, strip 3
102 changeset: 1:ef3a871183d7
102 changeset: 1:ef3a871183d7
103 user: test
103 user: test
104 date: Thu Jan 01 00:00:00 1970 +0000
104 date: Thu Jan 01 00:00:00 1970 +0000
105 summary: b
105 summary: b
106
106
107 $ teststrip 1 4
107 $ teststrip 1 4
108 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
108 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
109 % before update 1, strip 4
109 % before update 1, strip 4
110 changeset: 1:ef3a871183d7
110 changeset: 1:ef3a871183d7
111 user: test
111 user: test
112 date: Thu Jan 01 00:00:00 1970 +0000
112 date: Thu Jan 01 00:00:00 1970 +0000
113 summary: b
113 summary: b
114
114
115 saved backup bundle to $TESTTMP/test/.hg/strip-backup/*-backup.hg (glob)
115 saved backup bundle to $TESTTMP/test/.hg/strip-backup/*-backup.hg (glob)
116 % after update 1, strip 4
116 % after update 1, strip 4
117 changeset: 1:ef3a871183d7
117 changeset: 1:ef3a871183d7
118 user: test
118 user: test
119 date: Thu Jan 01 00:00:00 1970 +0000
119 date: Thu Jan 01 00:00:00 1970 +0000
120 summary: b
120 summary: b
121
121
122 $ teststrip 4 2
122 $ teststrip 4 2
123 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
123 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
124 % before update 4, strip 2
124 % before update 4, strip 2
125 changeset: 4:443431ffac4f
125 changeset: 4:443431ffac4f
126 tag: tip
126 tag: tip
127 user: test
127 user: test
128 date: Thu Jan 01 00:00:00 1970 +0000
128 date: Thu Jan 01 00:00:00 1970 +0000
129 summary: e
129 summary: e
130
130
131 saved backup bundle to $TESTTMP/test/.hg/strip-backup/*-backup.hg (glob)
131 saved backup bundle to $TESTTMP/test/.hg/strip-backup/*-backup.hg (glob)
132 % after update 4, strip 2
132 % after update 4, strip 2
133 changeset: 3:443431ffac4f
133 changeset: 3:443431ffac4f
134 tag: tip
134 tag: tip
135 user: test
135 user: test
136 date: Thu Jan 01 00:00:00 1970 +0000
136 date: Thu Jan 01 00:00:00 1970 +0000
137 summary: e
137 summary: e
138
138
139 $ teststrip 4 1
139 $ teststrip 4 1
140 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
140 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
141 % before update 4, strip 1
141 % before update 4, strip 1
142 changeset: 4:264128213d29
142 changeset: 4:264128213d29
143 tag: tip
143 tag: tip
144 parent: 1:ef3a871183d7
144 parent: 1:ef3a871183d7
145 user: test
145 user: test
146 date: Thu Jan 01 00:00:00 1970 +0000
146 date: Thu Jan 01 00:00:00 1970 +0000
147 summary: c
147 summary: c
148
148
149 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
149 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
150 saved backup bundle to $TESTTMP/test/.hg/strip-backup/*-backup.hg (glob)
150 saved backup bundle to $TESTTMP/test/.hg/strip-backup/*-backup.hg (glob)
151 % after update 4, strip 1
151 % after update 4, strip 1
152 changeset: 0:9ab35a2d17cb
152 changeset: 0:9ab35a2d17cb
153 tag: tip
153 tag: tip
154 user: test
154 user: test
155 date: Thu Jan 01 00:00:00 1970 +0000
155 date: Thu Jan 01 00:00:00 1970 +0000
156 summary: a
156 summary: a
157
157
158 $ teststrip null 4
158 $ teststrip null 4
159 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
159 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
160 % before update null, strip 4
160 % before update null, strip 4
161 saved backup bundle to $TESTTMP/test/.hg/strip-backup/*-backup.hg (glob)
161 saved backup bundle to $TESTTMP/test/.hg/strip-backup/*-backup.hg (glob)
162 % after update null, strip 4
162 % after update null, strip 4
163
163
164 $ hg log
164 $ hg log
165 changeset: 4:264128213d29
165 changeset: 4:264128213d29
166 tag: tip
166 tag: tip
167 parent: 1:ef3a871183d7
167 parent: 1:ef3a871183d7
168 user: test
168 user: test
169 date: Thu Jan 01 00:00:00 1970 +0000
169 date: Thu Jan 01 00:00:00 1970 +0000
170 summary: c
170 summary: c
171
171
172 changeset: 3:443431ffac4f
172 changeset: 3:443431ffac4f
173 user: test
173 user: test
174 date: Thu Jan 01 00:00:00 1970 +0000
174 date: Thu Jan 01 00:00:00 1970 +0000
175 summary: e
175 summary: e
176
176
177 changeset: 2:65bd5f99a4a3
177 changeset: 2:65bd5f99a4a3
178 user: test
178 user: test
179 date: Thu Jan 01 00:00:00 1970 +0000
179 date: Thu Jan 01 00:00:00 1970 +0000
180 summary: d
180 summary: d
181
181
182 changeset: 1:ef3a871183d7
182 changeset: 1:ef3a871183d7
183 user: test
183 user: test
184 date: Thu Jan 01 00:00:00 1970 +0000
184 date: Thu Jan 01 00:00:00 1970 +0000
185 summary: b
185 summary: b
186
186
187 changeset: 0:9ab35a2d17cb
187 changeset: 0:9ab35a2d17cb
188 user: test
188 user: test
189 date: Thu Jan 01 00:00:00 1970 +0000
189 date: Thu Jan 01 00:00:00 1970 +0000
190 summary: a
190 summary: a
191
191
192 $ hg up -C 4
192 $ hg up -C 4
193 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
193 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
194 $ hg parents
194 $ hg parents
195 changeset: 4:264128213d29
195 changeset: 4:264128213d29
196 tag: tip
196 tag: tip
197 parent: 1:ef3a871183d7
197 parent: 1:ef3a871183d7
198 user: test
198 user: test
199 date: Thu Jan 01 00:00:00 1970 +0000
199 date: Thu Jan 01 00:00:00 1970 +0000
200 summary: c
200 summary: c
201
201
202
202
203 $ hg --traceback strip 4
203 $ hg --traceback strip 4
204 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
204 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
205 saved backup bundle to $TESTTMP/test/.hg/strip-backup/264128213d29-0b39d6bf-backup.hg (glob)
205 saved backup bundle to $TESTTMP/test/.hg/strip-backup/264128213d29-0b39d6bf-backup.hg (glob)
206 $ hg parents
206 $ hg parents
207 changeset: 1:ef3a871183d7
207 changeset: 1:ef3a871183d7
208 user: test
208 user: test
209 date: Thu Jan 01 00:00:00 1970 +0000
209 date: Thu Jan 01 00:00:00 1970 +0000
210 summary: b
210 summary: b
211
211
212 $ hg debugbundle .hg/strip-backup/*
212 $ hg debugbundle .hg/strip-backup/*
213 Stream params: {'Compression': 'BZ'}
213 Stream params: {'Compression': 'BZ'}
214 changegroup -- "{'version': '02'}"
214 changegroup -- "{'version': '02'}"
215 264128213d290d868c54642d13aeaa3675551a78
215 264128213d290d868c54642d13aeaa3675551a78
216 $ hg pull .hg/strip-backup/*
216 $ hg pull .hg/strip-backup/*
217 pulling from .hg/strip-backup/264128213d29-0b39d6bf-backup.hg
217 pulling from .hg/strip-backup/264128213d29-0b39d6bf-backup.hg
218 searching for changes
218 searching for changes
219 adding changesets
219 adding changesets
220 adding manifests
220 adding manifests
221 adding file changes
221 adding file changes
222 added 1 changesets with 0 changes to 0 files (+1 heads)
222 added 1 changesets with 0 changes to 0 files (+1 heads)
223 (run 'hg heads' to see heads, 'hg merge' to merge)
223 (run 'hg heads' to see heads, 'hg merge' to merge)
224 $ rm .hg/strip-backup/*
224 $ rm .hg/strip-backup/*
225 $ hg log --graph
225 $ hg log --graph
226 o changeset: 4:264128213d29
226 o changeset: 4:264128213d29
227 | tag: tip
227 | tag: tip
228 | parent: 1:ef3a871183d7
228 | parent: 1:ef3a871183d7
229 | user: test
229 | user: test
230 | date: Thu Jan 01 00:00:00 1970 +0000
230 | date: Thu Jan 01 00:00:00 1970 +0000
231 | summary: c
231 | summary: c
232 |
232 |
233 | o changeset: 3:443431ffac4f
233 | o changeset: 3:443431ffac4f
234 | | user: test
234 | | user: test
235 | | date: Thu Jan 01 00:00:00 1970 +0000
235 | | date: Thu Jan 01 00:00:00 1970 +0000
236 | | summary: e
236 | | summary: e
237 | |
237 | |
238 | o changeset: 2:65bd5f99a4a3
238 | o changeset: 2:65bd5f99a4a3
239 |/ user: test
239 |/ user: test
240 | date: Thu Jan 01 00:00:00 1970 +0000
240 | date: Thu Jan 01 00:00:00 1970 +0000
241 | summary: d
241 | summary: d
242 |
242 |
243 @ changeset: 1:ef3a871183d7
243 @ changeset: 1:ef3a871183d7
244 | user: test
244 | user: test
245 | date: Thu Jan 01 00:00:00 1970 +0000
245 | date: Thu Jan 01 00:00:00 1970 +0000
246 | summary: b
246 | summary: b
247 |
247 |
248 o changeset: 0:9ab35a2d17cb
248 o changeset: 0:9ab35a2d17cb
249 user: test
249 user: test
250 date: Thu Jan 01 00:00:00 1970 +0000
250 date: Thu Jan 01 00:00:00 1970 +0000
251 summary: a
251 summary: a
252
252
253 $ hg up -C 2
253 $ hg up -C 2
254 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
254 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
255 $ hg merge 4
255 $ hg merge 4
256 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
256 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
257 (branch merge, don't forget to commit)
257 (branch merge, don't forget to commit)
258
258
259 before strip of merge parent
259 before strip of merge parent
260
260
261 $ hg parents
261 $ hg parents
262 changeset: 2:65bd5f99a4a3
262 changeset: 2:65bd5f99a4a3
263 user: test
263 user: test
264 date: Thu Jan 01 00:00:00 1970 +0000
264 date: Thu Jan 01 00:00:00 1970 +0000
265 summary: d
265 summary: d
266
266
267 changeset: 4:264128213d29
267 changeset: 4:264128213d29
268 tag: tip
268 tag: tip
269 parent: 1:ef3a871183d7
269 parent: 1:ef3a871183d7
270 user: test
270 user: test
271 date: Thu Jan 01 00:00:00 1970 +0000
271 date: Thu Jan 01 00:00:00 1970 +0000
272 summary: c
272 summary: c
273
273
274 $ hg strip 4
274 $ hg strip 4
275 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
275 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
276 saved backup bundle to $TESTTMP/test/.hg/strip-backup/*-backup.hg (glob)
276 saved backup bundle to $TESTTMP/test/.hg/strip-backup/*-backup.hg (glob)
277
277
278 after strip of merge parent
278 after strip of merge parent
279
279
280 $ hg parents
280 $ hg parents
281 changeset: 1:ef3a871183d7
281 changeset: 1:ef3a871183d7
282 user: test
282 user: test
283 date: Thu Jan 01 00:00:00 1970 +0000
283 date: Thu Jan 01 00:00:00 1970 +0000
284 summary: b
284 summary: b
285
285
286 $ restore
286 $ restore
287
287
288 $ hg up
288 $ hg up
289 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
289 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
290 $ hg log -G
290 $ hg log -G
291 @ changeset: 4:264128213d29
291 @ changeset: 4:264128213d29
292 | tag: tip
292 | tag: tip
293 | parent: 1:ef3a871183d7
293 | parent: 1:ef3a871183d7
294 | user: test
294 | user: test
295 | date: Thu Jan 01 00:00:00 1970 +0000
295 | date: Thu Jan 01 00:00:00 1970 +0000
296 | summary: c
296 | summary: c
297 |
297 |
298 | o changeset: 3:443431ffac4f
298 | o changeset: 3:443431ffac4f
299 | | user: test
299 | | user: test
300 | | date: Thu Jan 01 00:00:00 1970 +0000
300 | | date: Thu Jan 01 00:00:00 1970 +0000
301 | | summary: e
301 | | summary: e
302 | |
302 | |
303 | o changeset: 2:65bd5f99a4a3
303 | o changeset: 2:65bd5f99a4a3
304 |/ user: test
304 |/ user: test
305 | date: Thu Jan 01 00:00:00 1970 +0000
305 | date: Thu Jan 01 00:00:00 1970 +0000
306 | summary: d
306 | summary: d
307 |
307 |
308 o changeset: 1:ef3a871183d7
308 o changeset: 1:ef3a871183d7
309 | user: test
309 | user: test
310 | date: Thu Jan 01 00:00:00 1970 +0000
310 | date: Thu Jan 01 00:00:00 1970 +0000
311 | summary: b
311 | summary: b
312 |
312 |
313 o changeset: 0:9ab35a2d17cb
313 o changeset: 0:9ab35a2d17cb
314 user: test
314 user: test
315 date: Thu Jan 01 00:00:00 1970 +0000
315 date: Thu Jan 01 00:00:00 1970 +0000
316 summary: a
316 summary: a
317
317
318
318
319 2 is parent of 3, only one strip should happen
319 2 is parent of 3, only one strip should happen
320
320
321 $ hg strip "roots(2)" 3
321 $ hg strip "roots(2)" 3
322 saved backup bundle to $TESTTMP/test/.hg/strip-backup/*-backup.hg (glob)
322 saved backup bundle to $TESTTMP/test/.hg/strip-backup/*-backup.hg (glob)
323 $ hg log -G
323 $ hg log -G
324 @ changeset: 2:264128213d29
324 @ changeset: 2:264128213d29
325 | tag: tip
325 | tag: tip
326 | user: test
326 | user: test
327 | date: Thu Jan 01 00:00:00 1970 +0000
327 | date: Thu Jan 01 00:00:00 1970 +0000
328 | summary: c
328 | summary: c
329 |
329 |
330 o changeset: 1:ef3a871183d7
330 o changeset: 1:ef3a871183d7
331 | user: test
331 | user: test
332 | date: Thu Jan 01 00:00:00 1970 +0000
332 | date: Thu Jan 01 00:00:00 1970 +0000
333 | summary: b
333 | summary: b
334 |
334 |
335 o changeset: 0:9ab35a2d17cb
335 o changeset: 0:9ab35a2d17cb
336 user: test
336 user: test
337 date: Thu Jan 01 00:00:00 1970 +0000
337 date: Thu Jan 01 00:00:00 1970 +0000
338 summary: a
338 summary: a
339
339
340 $ restore
340 $ restore
341 $ hg log -G
341 $ hg log -G
342 o changeset: 4:443431ffac4f
342 o changeset: 4:443431ffac4f
343 | tag: tip
343 | tag: tip
344 | user: test
344 | user: test
345 | date: Thu Jan 01 00:00:00 1970 +0000
345 | date: Thu Jan 01 00:00:00 1970 +0000
346 | summary: e
346 | summary: e
347 |
347 |
348 o changeset: 3:65bd5f99a4a3
348 o changeset: 3:65bd5f99a4a3
349 | parent: 1:ef3a871183d7
349 | parent: 1:ef3a871183d7
350 | user: test
350 | user: test
351 | date: Thu Jan 01 00:00:00 1970 +0000
351 | date: Thu Jan 01 00:00:00 1970 +0000
352 | summary: d
352 | summary: d
353 |
353 |
354 | @ changeset: 2:264128213d29
354 | @ changeset: 2:264128213d29
355 |/ user: test
355 |/ user: test
356 | date: Thu Jan 01 00:00:00 1970 +0000
356 | date: Thu Jan 01 00:00:00 1970 +0000
357 | summary: c
357 | summary: c
358 |
358 |
359 o changeset: 1:ef3a871183d7
359 o changeset: 1:ef3a871183d7
360 | user: test
360 | user: test
361 | date: Thu Jan 01 00:00:00 1970 +0000
361 | date: Thu Jan 01 00:00:00 1970 +0000
362 | summary: b
362 | summary: b
363 |
363 |
364 o changeset: 0:9ab35a2d17cb
364 o changeset: 0:9ab35a2d17cb
365 user: test
365 user: test
366 date: Thu Jan 01 00:00:00 1970 +0000
366 date: Thu Jan 01 00:00:00 1970 +0000
367 summary: a
367 summary: a
368
368
369
369
370 2 different branches: 2 strips
370 2 different branches: 2 strips
371
371
372 $ hg strip 2 4
372 $ hg strip 2 4
373 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
373 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
374 saved backup bundle to $TESTTMP/test/.hg/strip-backup/*-backup.hg (glob)
374 saved backup bundle to $TESTTMP/test/.hg/strip-backup/*-backup.hg (glob)
375 $ hg log -G
375 $ hg log -G
376 o changeset: 2:65bd5f99a4a3
376 o changeset: 2:65bd5f99a4a3
377 | tag: tip
377 | tag: tip
378 | user: test
378 | user: test
379 | date: Thu Jan 01 00:00:00 1970 +0000
379 | date: Thu Jan 01 00:00:00 1970 +0000
380 | summary: d
380 | summary: d
381 |
381 |
382 @ changeset: 1:ef3a871183d7
382 @ changeset: 1:ef3a871183d7
383 | user: test
383 | user: test
384 | date: Thu Jan 01 00:00:00 1970 +0000
384 | date: Thu Jan 01 00:00:00 1970 +0000
385 | summary: b
385 | summary: b
386 |
386 |
387 o changeset: 0:9ab35a2d17cb
387 o changeset: 0:9ab35a2d17cb
388 user: test
388 user: test
389 date: Thu Jan 01 00:00:00 1970 +0000
389 date: Thu Jan 01 00:00:00 1970 +0000
390 summary: a
390 summary: a
391
391
392 $ restore
392 $ restore
393
393
394 2 different branches and a common ancestor: 1 strip
394 2 different branches and a common ancestor: 1 strip
395
395
396 $ hg strip 1 "2|4"
396 $ hg strip 1 "2|4"
397 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
397 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
398 saved backup bundle to $TESTTMP/test/.hg/strip-backup/*-backup.hg (glob)
398 saved backup bundle to $TESTTMP/test/.hg/strip-backup/*-backup.hg (glob)
399 $ restore
399 $ restore
400
400
401 verify fncache is kept up-to-date
401 verify fncache is kept up-to-date
402
402
403 $ touch a
403 $ touch a
404 $ hg ci -qAm a
404 $ hg ci -qAm a
405 $ cat .hg/store/fncache | sort
405 $ cat .hg/store/fncache | sort
406 data/a.i
406 data/a.i
407 data/bar.i
407 data/bar.i
408 $ hg strip tip
408 $ hg strip tip
409 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
409 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
410 saved backup bundle to $TESTTMP/test/.hg/strip-backup/*-backup.hg (glob)
410 saved backup bundle to $TESTTMP/test/.hg/strip-backup/*-backup.hg (glob)
411 $ cat .hg/store/fncache
411 $ cat .hg/store/fncache
412 data/bar.i
412 data/bar.i
413
413
414 stripping an empty revset
414 stripping an empty revset
415
415
416 $ hg strip "1 and not 1"
416 $ hg strip "1 and not 1"
417 abort: empty revision set
417 abort: empty revision set
418 [255]
418 [255]
419
419
420 remove branchy history for qimport tests
420 remove branchy history for qimport tests
421
421
422 $ hg strip 3
422 $ hg strip 3
423 saved backup bundle to $TESTTMP/test/.hg/strip-backup/*-backup.hg (glob)
423 saved backup bundle to $TESTTMP/test/.hg/strip-backup/*-backup.hg (glob)
424
424
425
425
426 strip of applied mq should cleanup status file
426 strip of applied mq should cleanup status file
427
427
428 $ echo "mq=" >> $HGRCPATH
428 $ echo "mq=" >> $HGRCPATH
429 $ hg up -C 3
429 $ hg up -C 3
430 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
430 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
431 $ echo fooagain >> bar
431 $ echo fooagain >> bar
432 $ hg ci -mf
432 $ hg ci -mf
433 $ hg qimport -r tip:2
433 $ hg qimport -r tip:2
434
434
435 applied patches before strip
435 applied patches before strip
436
436
437 $ hg qapplied
437 $ hg qapplied
438 d
438 d
439 e
439 e
440 f
440 f
441
441
442 stripping revision in queue
442 stripping revision in queue
443
443
444 $ hg strip 3
444 $ hg strip 3
445 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
445 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
446 saved backup bundle to $TESTTMP/test/.hg/strip-backup/*-backup.hg (glob)
446 saved backup bundle to $TESTTMP/test/.hg/strip-backup/*-backup.hg (glob)
447
447
448 applied patches after stripping rev in queue
448 applied patches after stripping rev in queue
449
449
450 $ hg qapplied
450 $ hg qapplied
451 d
451 d
452
452
453 stripping ancestor of queue
453 stripping ancestor of queue
454
454
455 $ hg strip 1
455 $ hg strip 1
456 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
456 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
457 saved backup bundle to $TESTTMP/test/.hg/strip-backup/*-backup.hg (glob)
457 saved backup bundle to $TESTTMP/test/.hg/strip-backup/*-backup.hg (glob)
458
458
459 applied patches after stripping ancestor of queue
459 applied patches after stripping ancestor of queue
460
460
461 $ hg qapplied
461 $ hg qapplied
462
462
463 Verify strip protects against stripping wc parent when there are uncommitted mods
463 Verify strip protects against stripping wc parent when there are uncommitted mods
464
464
465 $ echo b > b
465 $ echo b > b
466 $ echo bb > bar
466 $ echo bb > bar
467 $ hg add b
467 $ hg add b
468 $ hg ci -m 'b'
468 $ hg ci -m 'b'
469 $ hg log --graph
469 $ hg log --graph
470 @ changeset: 1:76dcf9fab855
470 @ changeset: 1:76dcf9fab855
471 | tag: tip
471 | tag: tip
472 | user: test
472 | user: test
473 | date: Thu Jan 01 00:00:00 1970 +0000
473 | date: Thu Jan 01 00:00:00 1970 +0000
474 | summary: b
474 | summary: b
475 |
475 |
476 o changeset: 0:9ab35a2d17cb
476 o changeset: 0:9ab35a2d17cb
477 user: test
477 user: test
478 date: Thu Jan 01 00:00:00 1970 +0000
478 date: Thu Jan 01 00:00:00 1970 +0000
479 summary: a
479 summary: a
480
480
481 $ hg up 0
481 $ hg up 0
482 1 files updated, 0 files merged, 1 files removed, 0 files unresolved
482 1 files updated, 0 files merged, 1 files removed, 0 files unresolved
483 $ echo c > bar
483 $ echo c > bar
484 $ hg up -t false
484 $ hg up -t false
485 merging bar
485 merging bar
486 merging bar failed!
486 merging bar failed!
487 1 files updated, 0 files merged, 0 files removed, 1 files unresolved
487 1 files updated, 0 files merged, 0 files removed, 1 files unresolved
488 use 'hg resolve' to retry unresolved file merges
488 use 'hg resolve' to retry unresolved file merges
489 [1]
489 [1]
490 $ hg sum
490 $ hg sum
491 parent: 1:76dcf9fab855 tip
491 parent: 1:76dcf9fab855 tip
492 b
492 b
493 branch: default
493 branch: default
494 commit: 1 modified, 1 unknown, 1 unresolved
494 commit: 1 modified, 1 unknown, 1 unresolved
495 update: (current)
495 update: (current)
496 phases: 2 draft
496 phases: 2 draft
497 mq: 3 unapplied
497 mq: 3 unapplied
498
498
499 $ echo c > b
499 $ echo c > b
500 $ hg strip tip
500 $ hg strip tip
501 abort: local changes found
501 abort: local changes found
502 [255]
502 [255]
503 $ hg strip tip --keep
503 $ hg strip tip --keep
504 saved backup bundle to $TESTTMP/test/.hg/strip-backup/*-backup.hg (glob)
504 saved backup bundle to $TESTTMP/test/.hg/strip-backup/*-backup.hg (glob)
505 $ hg log --graph
505 $ hg log --graph
506 @ changeset: 0:9ab35a2d17cb
506 @ changeset: 0:9ab35a2d17cb
507 tag: tip
507 tag: tip
508 user: test
508 user: test
509 date: Thu Jan 01 00:00:00 1970 +0000
509 date: Thu Jan 01 00:00:00 1970 +0000
510 summary: a
510 summary: a
511
511
512 $ hg status
512 $ hg status
513 M bar
513 M bar
514 ? b
514 ? b
515 ? bar.orig
515 ? bar.orig
516
516
517 $ rm bar.orig
517 $ rm bar.orig
518 $ hg sum
518 $ hg sum
519 parent: 0:9ab35a2d17cb tip
519 parent: 0:9ab35a2d17cb tip
520 a
520 a
521 branch: default
521 branch: default
522 commit: 1 modified, 1 unknown
522 commit: 1 modified, 1 unknown
523 update: (current)
523 update: (current)
524 phases: 1 draft
524 phases: 1 draft
525 mq: 3 unapplied
525 mq: 3 unapplied
526
526
527 Strip adds, removes, modifies with --keep
527 Strip adds, removes, modifies with --keep
528
528
529 $ touch b
529 $ touch b
530 $ hg add b
530 $ hg add b
531 $ hg commit -mb
531 $ hg commit -mb
532 $ touch c
532 $ touch c
533
533
534 ... with a clean working dir
534 ... with a clean working dir
535
535
536 $ hg add c
536 $ hg add c
537 $ hg rm bar
537 $ hg rm bar
538 $ hg commit -mc
538 $ hg commit -mc
539 $ hg status
539 $ hg status
540 $ hg strip --keep tip
540 $ hg strip --keep tip
541 saved backup bundle to $TESTTMP/test/.hg/strip-backup/*-backup.hg (glob)
541 saved backup bundle to $TESTTMP/test/.hg/strip-backup/*-backup.hg (glob)
542 $ hg status
542 $ hg status
543 ! bar
543 ! bar
544 ? c
544 ? c
545
545
546 ... with a dirty working dir
546 ... with a dirty working dir
547
547
548 $ hg add c
548 $ hg add c
549 $ hg rm bar
549 $ hg rm bar
550 $ hg commit -mc
550 $ hg commit -mc
551 $ hg status
551 $ hg status
552 $ echo b > b
552 $ echo b > b
553 $ echo d > d
553 $ echo d > d
554 $ hg strip --keep tip
554 $ hg strip --keep tip
555 saved backup bundle to $TESTTMP/test/.hg/strip-backup/57e364c8a475-4cfed93c-backup.hg (glob)
555 saved backup bundle to $TESTTMP/test/.hg/strip-backup/*-backup.hg (glob)
556 $ hg status
556 $ hg status
557 M b
557 M b
558 ! bar
558 ! bar
559 ? c
559 ? c
560 ? d
560 ? d
561
562 ... after updating the dirstate
563 $ hg add c
564 $ hg commit -mc
565 $ hg rm c
566 $ hg commit -mc
567 $ hg strip --keep '.^' -q
561 $ cd ..
568 $ cd ..
562
569
563 stripping many nodes on a complex graph (issue3299)
570 stripping many nodes on a complex graph (issue3299)
564
571
565 $ hg init issue3299
572 $ hg init issue3299
566 $ cd issue3299
573 $ cd issue3299
567 $ hg debugbuilddag '@a.:a@b.:b.:x<a@a.:a<b@b.:b<a@a.:a'
574 $ hg debugbuilddag '@a.:a@b.:b.:x<a@a.:a<b@b.:b<a@a.:a'
568 $ hg strip 'not ancestors(x)'
575 $ hg strip 'not ancestors(x)'
569 saved backup bundle to $TESTTMP/issue3299/.hg/strip-backup/*-backup.hg (glob)
576 saved backup bundle to $TESTTMP/issue3299/.hg/strip-backup/*-backup.hg (glob)
570
577
571 test hg strip -B bookmark
578 test hg strip -B bookmark
572
579
573 $ cd ..
580 $ cd ..
574 $ hg init bookmarks
581 $ hg init bookmarks
575 $ cd bookmarks
582 $ cd bookmarks
576 $ hg debugbuilddag '..<2.*1/2:m<2+3:c<m+3:a<2.:b<m+2:d<2.:e<m+1:f'
583 $ hg debugbuilddag '..<2.*1/2:m<2+3:c<m+3:a<2.:b<m+2:d<2.:e<m+1:f'
577 $ hg bookmark -r 'a' 'todelete'
584 $ hg bookmark -r 'a' 'todelete'
578 $ hg bookmark -r 'b' 'B'
585 $ hg bookmark -r 'b' 'B'
579 $ hg bookmark -r 'b' 'nostrip'
586 $ hg bookmark -r 'b' 'nostrip'
580 $ hg bookmark -r 'c' 'delete'
587 $ hg bookmark -r 'c' 'delete'
581 $ hg bookmark -r 'd' 'multipledelete1'
588 $ hg bookmark -r 'd' 'multipledelete1'
582 $ hg bookmark -r 'e' 'multipledelete2'
589 $ hg bookmark -r 'e' 'multipledelete2'
583 $ hg bookmark -r 'f' 'singlenode1'
590 $ hg bookmark -r 'f' 'singlenode1'
584 $ hg bookmark -r 'f' 'singlenode2'
591 $ hg bookmark -r 'f' 'singlenode2'
585 $ hg up -C todelete
592 $ hg up -C todelete
586 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
593 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
587 (activating bookmark todelete)
594 (activating bookmark todelete)
588 $ hg strip -B nostrip
595 $ hg strip -B nostrip
589 bookmark 'nostrip' deleted
596 bookmark 'nostrip' deleted
590 abort: empty revision set
597 abort: empty revision set
591 [255]
598 [255]
592 $ hg strip -B todelete
599 $ hg strip -B todelete
593 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
600 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
594 saved backup bundle to $TESTTMP/bookmarks/.hg/strip-backup/*-backup.hg (glob)
601 saved backup bundle to $TESTTMP/bookmarks/.hg/strip-backup/*-backup.hg (glob)
595 bookmark 'todelete' deleted
602 bookmark 'todelete' deleted
596 $ hg id -ir dcbb326fdec2
603 $ hg id -ir dcbb326fdec2
597 abort: unknown revision 'dcbb326fdec2'!
604 abort: unknown revision 'dcbb326fdec2'!
598 [255]
605 [255]
599 $ hg id -ir d62d843c9a01
606 $ hg id -ir d62d843c9a01
600 d62d843c9a01
607 d62d843c9a01
601 $ hg bookmarks
608 $ hg bookmarks
602 B 9:ff43616e5d0f
609 B 9:ff43616e5d0f
603 delete 6:2702dd0c91e7
610 delete 6:2702dd0c91e7
604 multipledelete1 11:e46a4836065c
611 multipledelete1 11:e46a4836065c
605 multipledelete2 12:b4594d867745
612 multipledelete2 12:b4594d867745
606 singlenode1 13:43227190fef8
613 singlenode1 13:43227190fef8
607 singlenode2 13:43227190fef8
614 singlenode2 13:43227190fef8
608 $ hg strip -B multipledelete1 -B multipledelete2
615 $ hg strip -B multipledelete1 -B multipledelete2
609 saved backup bundle to $TESTTMP/bookmarks/.hg/strip-backup/e46a4836065c-89ec65c2-backup.hg (glob)
616 saved backup bundle to $TESTTMP/bookmarks/.hg/strip-backup/e46a4836065c-89ec65c2-backup.hg (glob)
610 bookmark 'multipledelete1' deleted
617 bookmark 'multipledelete1' deleted
611 bookmark 'multipledelete2' deleted
618 bookmark 'multipledelete2' deleted
612 $ hg id -ir e46a4836065c
619 $ hg id -ir e46a4836065c
613 abort: unknown revision 'e46a4836065c'!
620 abort: unknown revision 'e46a4836065c'!
614 [255]
621 [255]
615 $ hg id -ir b4594d867745
622 $ hg id -ir b4594d867745
616 abort: unknown revision 'b4594d867745'!
623 abort: unknown revision 'b4594d867745'!
617 [255]
624 [255]
618 $ hg strip -B singlenode1 -B singlenode2
625 $ hg strip -B singlenode1 -B singlenode2
619 saved backup bundle to $TESTTMP/bookmarks/.hg/strip-backup/43227190fef8-8da858f2-backup.hg (glob)
626 saved backup bundle to $TESTTMP/bookmarks/.hg/strip-backup/43227190fef8-8da858f2-backup.hg (glob)
620 bookmark 'singlenode1' deleted
627 bookmark 'singlenode1' deleted
621 bookmark 'singlenode2' deleted
628 bookmark 'singlenode2' deleted
622 $ hg id -ir 43227190fef8
629 $ hg id -ir 43227190fef8
623 abort: unknown revision '43227190fef8'!
630 abort: unknown revision '43227190fef8'!
624 [255]
631 [255]
625 $ hg strip -B unknownbookmark
632 $ hg strip -B unknownbookmark
626 abort: bookmark 'unknownbookmark' not found
633 abort: bookmark 'unknownbookmark' not found
627 [255]
634 [255]
628 $ hg strip -B unknownbookmark1 -B unknownbookmark2
635 $ hg strip -B unknownbookmark1 -B unknownbookmark2
629 abort: bookmark 'unknownbookmark1,unknownbookmark2' not found
636 abort: bookmark 'unknownbookmark1,unknownbookmark2' not found
630 [255]
637 [255]
631 $ hg strip -B delete -B unknownbookmark
638 $ hg strip -B delete -B unknownbookmark
632 abort: bookmark 'unknownbookmark' not found
639 abort: bookmark 'unknownbookmark' not found
633 [255]
640 [255]
634 $ hg strip -B delete
641 $ hg strip -B delete
635 saved backup bundle to $TESTTMP/bookmarks/.hg/strip-backup/*-backup.hg (glob)
642 saved backup bundle to $TESTTMP/bookmarks/.hg/strip-backup/*-backup.hg (glob)
636 bookmark 'delete' deleted
643 bookmark 'delete' deleted
637 $ hg id -ir 6:2702dd0c91e7
644 $ hg id -ir 6:2702dd0c91e7
638 abort: unknown revision '2702dd0c91e7'!
645 abort: unknown revision '2702dd0c91e7'!
639 [255]
646 [255]
640 $ hg update B
647 $ hg update B
641 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
648 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
642 (activating bookmark B)
649 (activating bookmark B)
643 $ echo a > a
650 $ echo a > a
644 $ hg add a
651 $ hg add a
645 $ hg strip -B B
652 $ hg strip -B B
646 abort: local changes found
653 abort: local changes found
647 [255]
654 [255]
648 $ hg bookmarks
655 $ hg bookmarks
649 * B 6:ff43616e5d0f
656 * B 6:ff43616e5d0f
650
657
651 Make sure no one adds back a -b option:
658 Make sure no one adds back a -b option:
652
659
653 $ hg strip -b tip
660 $ hg strip -b tip
654 hg strip: option -b not recognized
661 hg strip: option -b not recognized
655 hg strip [-k] [-f] [-n] [-B bookmark] [-r] REV...
662 hg strip [-k] [-f] [-n] [-B bookmark] [-r] REV...
656
663
657 strip changesets and all their descendants from the repository
664 strip changesets and all their descendants from the repository
658
665
659 (use "hg help -e strip" to show help for the strip extension)
666 (use "hg help -e strip" to show help for the strip extension)
660
667
661 options ([+] can be repeated):
668 options ([+] can be repeated):
662
669
663 -r --rev REV [+] strip specified revision (optional, can specify
670 -r --rev REV [+] strip specified revision (optional, can specify
664 revisions without this option)
671 revisions without this option)
665 -f --force force removal of changesets, discard uncommitted
672 -f --force force removal of changesets, discard uncommitted
666 changes (no backup)
673 changes (no backup)
667 --no-backup no backups
674 --no-backup no backups
668 -k --keep do not modify working directory during strip
675 -k --keep do not modify working directory during strip
669 -B --bookmark VALUE [+] remove revs only reachable from given bookmark
676 -B --bookmark VALUE [+] remove revs only reachable from given bookmark
670 --mq operate on patch repository
677 --mq operate on patch repository
671
678
672 (use "hg strip -h" to show more help)
679 (use "hg strip -h" to show more help)
673 [255]
680 [255]
674
681
675 $ cd ..
682 $ cd ..
676
683
677 Verify bundles don't get overwritten:
684 Verify bundles don't get overwritten:
678
685
679 $ hg init doublebundle
686 $ hg init doublebundle
680 $ cd doublebundle
687 $ cd doublebundle
681 $ touch a
688 $ touch a
682 $ hg commit -Aqm a
689 $ hg commit -Aqm a
683 $ touch b
690 $ touch b
684 $ hg commit -Aqm b
691 $ hg commit -Aqm b
685 $ hg strip -r 0
692 $ hg strip -r 0
686 0 files updated, 0 files merged, 2 files removed, 0 files unresolved
693 0 files updated, 0 files merged, 2 files removed, 0 files unresolved
687 saved backup bundle to $TESTTMP/doublebundle/.hg/strip-backup/3903775176ed-e68910bd-backup.hg (glob)
694 saved backup bundle to $TESTTMP/doublebundle/.hg/strip-backup/3903775176ed-e68910bd-backup.hg (glob)
688 $ ls .hg/strip-backup
695 $ ls .hg/strip-backup
689 3903775176ed-e68910bd-backup.hg
696 3903775176ed-e68910bd-backup.hg
690 $ hg pull -q -r 3903775176ed .hg/strip-backup/3903775176ed-e68910bd-backup.hg
697 $ hg pull -q -r 3903775176ed .hg/strip-backup/3903775176ed-e68910bd-backup.hg
691 $ hg strip -r 0
698 $ hg strip -r 0
692 saved backup bundle to $TESTTMP/doublebundle/.hg/strip-backup/3903775176ed-54390173-backup.hg (glob)
699 saved backup bundle to $TESTTMP/doublebundle/.hg/strip-backup/3903775176ed-54390173-backup.hg (glob)
693 $ ls .hg/strip-backup
700 $ ls .hg/strip-backup
694 3903775176ed-54390173-backup.hg
701 3903775176ed-54390173-backup.hg
695 3903775176ed-e68910bd-backup.hg
702 3903775176ed-e68910bd-backup.hg
696 $ cd ..
703 $ cd ..
697
704
698 Test that we only bundle the stripped changesets (issue4736)
705 Test that we only bundle the stripped changesets (issue4736)
699 ------------------------------------------------------------
706 ------------------------------------------------------------
700
707
701 initialization (previous repo is empty anyway)
708 initialization (previous repo is empty anyway)
702
709
703 $ hg init issue4736
710 $ hg init issue4736
704 $ cd issue4736
711 $ cd issue4736
705 $ echo a > a
712 $ echo a > a
706 $ hg add a
713 $ hg add a
707 $ hg commit -m commitA
714 $ hg commit -m commitA
708 $ echo b > b
715 $ echo b > b
709 $ hg add b
716 $ hg add b
710 $ hg commit -m commitB
717 $ hg commit -m commitB
711 $ echo c > c
718 $ echo c > c
712 $ hg add c
719 $ hg add c
713 $ hg commit -m commitC
720 $ hg commit -m commitC
714 $ hg up 'desc(commitB)'
721 $ hg up 'desc(commitB)'
715 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
722 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
716 $ echo d > d
723 $ echo d > d
717 $ hg add d
724 $ hg add d
718 $ hg commit -m commitD
725 $ hg commit -m commitD
719 created new head
726 created new head
720 $ hg up 'desc(commitC)'
727 $ hg up 'desc(commitC)'
721 1 files updated, 0 files merged, 1 files removed, 0 files unresolved
728 1 files updated, 0 files merged, 1 files removed, 0 files unresolved
722 $ hg merge 'desc(commitD)'
729 $ hg merge 'desc(commitD)'
723 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
730 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
724 (branch merge, don't forget to commit)
731 (branch merge, don't forget to commit)
725 $ hg ci -m 'mergeCD'
732 $ hg ci -m 'mergeCD'
726 $ hg log -G
733 $ hg log -G
727 @ changeset: 4:d8db9d137221
734 @ changeset: 4:d8db9d137221
728 |\ tag: tip
735 |\ tag: tip
729 | | parent: 2:5c51d8d6557d
736 | | parent: 2:5c51d8d6557d
730 | | parent: 3:6625a5168474
737 | | parent: 3:6625a5168474
731 | | user: test
738 | | user: test
732 | | date: Thu Jan 01 00:00:00 1970 +0000
739 | | date: Thu Jan 01 00:00:00 1970 +0000
733 | | summary: mergeCD
740 | | summary: mergeCD
734 | |
741 | |
735 | o changeset: 3:6625a5168474
742 | o changeset: 3:6625a5168474
736 | | parent: 1:eca11cf91c71
743 | | parent: 1:eca11cf91c71
737 | | user: test
744 | | user: test
738 | | date: Thu Jan 01 00:00:00 1970 +0000
745 | | date: Thu Jan 01 00:00:00 1970 +0000
739 | | summary: commitD
746 | | summary: commitD
740 | |
747 | |
741 o | changeset: 2:5c51d8d6557d
748 o | changeset: 2:5c51d8d6557d
742 |/ user: test
749 |/ user: test
743 | date: Thu Jan 01 00:00:00 1970 +0000
750 | date: Thu Jan 01 00:00:00 1970 +0000
744 | summary: commitC
751 | summary: commitC
745 |
752 |
746 o changeset: 1:eca11cf91c71
753 o changeset: 1:eca11cf91c71
747 | user: test
754 | user: test
748 | date: Thu Jan 01 00:00:00 1970 +0000
755 | date: Thu Jan 01 00:00:00 1970 +0000
749 | summary: commitB
756 | summary: commitB
750 |
757 |
751 o changeset: 0:105141ef12d0
758 o changeset: 0:105141ef12d0
752 user: test
759 user: test
753 date: Thu Jan 01 00:00:00 1970 +0000
760 date: Thu Jan 01 00:00:00 1970 +0000
754 summary: commitA
761 summary: commitA
755
762
756
763
757 Check bundle behavior:
764 Check bundle behavior:
758
765
759 $ hg bundle -r 'desc(mergeCD)' --base 'desc(commitC)' ../issue4736.hg
766 $ hg bundle -r 'desc(mergeCD)' --base 'desc(commitC)' ../issue4736.hg
760 2 changesets found
767 2 changesets found
761 $ hg log -r 'bundle()' -R ../issue4736.hg
768 $ hg log -r 'bundle()' -R ../issue4736.hg
762 changeset: 3:6625a5168474
769 changeset: 3:6625a5168474
763 parent: 1:eca11cf91c71
770 parent: 1:eca11cf91c71
764 user: test
771 user: test
765 date: Thu Jan 01 00:00:00 1970 +0000
772 date: Thu Jan 01 00:00:00 1970 +0000
766 summary: commitD
773 summary: commitD
767
774
768 changeset: 4:d8db9d137221
775 changeset: 4:d8db9d137221
769 tag: tip
776 tag: tip
770 parent: 2:5c51d8d6557d
777 parent: 2:5c51d8d6557d
771 parent: 3:6625a5168474
778 parent: 3:6625a5168474
772 user: test
779 user: test
773 date: Thu Jan 01 00:00:00 1970 +0000
780 date: Thu Jan 01 00:00:00 1970 +0000
774 summary: mergeCD
781 summary: mergeCD
775
782
776
783
777 check strip behavior
784 check strip behavior
778
785
779 $ hg --config extensions.strip= strip 'desc(commitD)' --debug
786 $ hg --config extensions.strip= strip 'desc(commitD)' --debug
780 resolving manifests
787 resolving manifests
781 branchmerge: False, force: True, partial: False
788 branchmerge: False, force: True, partial: False
782 ancestor: d8db9d137221+, local: d8db9d137221+, remote: eca11cf91c71
789 ancestor: d8db9d137221+, local: d8db9d137221+, remote: eca11cf91c71
783 c: other deleted -> r
790 c: other deleted -> r
784 removing c
791 removing c
785 d: other deleted -> r
792 d: other deleted -> r
786 removing d
793 removing d
787 0 files updated, 0 files merged, 2 files removed, 0 files unresolved
794 0 files updated, 0 files merged, 2 files removed, 0 files unresolved
788 2 changesets found
795 2 changesets found
789 list of changesets:
796 list of changesets:
790 6625a516847449b6f0fa3737b9ba56e9f0f3032c
797 6625a516847449b6f0fa3737b9ba56e9f0f3032c
791 d8db9d1372214336d2b5570f20ee468d2c72fa8b
798 d8db9d1372214336d2b5570f20ee468d2c72fa8b
792 bundle2-output-bundle: "HG20", (1 params) 1 parts total
799 bundle2-output-bundle: "HG20", (1 params) 1 parts total
793 bundle2-output-part: "changegroup" (params: 1 mandatory) streamed payload
800 bundle2-output-part: "changegroup" (params: 1 mandatory) streamed payload
794 saved backup bundle to $TESTTMP/issue4736/.hg/strip-backup/6625a5168474-345bb43d-backup.hg (glob)
801 saved backup bundle to $TESTTMP/issue4736/.hg/strip-backup/6625a5168474-345bb43d-backup.hg (glob)
795 invalid branchheads cache (served): tip differs
802 invalid branchheads cache (served): tip differs
796 truncating cache/rbc-revs-v1 to 24
803 truncating cache/rbc-revs-v1 to 24
797 $ hg log -G
804 $ hg log -G
798 o changeset: 2:5c51d8d6557d
805 o changeset: 2:5c51d8d6557d
799 | tag: tip
806 | tag: tip
800 | user: test
807 | user: test
801 | date: Thu Jan 01 00:00:00 1970 +0000
808 | date: Thu Jan 01 00:00:00 1970 +0000
802 | summary: commitC
809 | summary: commitC
803 |
810 |
804 @ changeset: 1:eca11cf91c71
811 @ changeset: 1:eca11cf91c71
805 | user: test
812 | user: test
806 | date: Thu Jan 01 00:00:00 1970 +0000
813 | date: Thu Jan 01 00:00:00 1970 +0000
807 | summary: commitB
814 | summary: commitB
808 |
815 |
809 o changeset: 0:105141ef12d0
816 o changeset: 0:105141ef12d0
810 user: test
817 user: test
811 date: Thu Jan 01 00:00:00 1970 +0000
818 date: Thu Jan 01 00:00:00 1970 +0000
812 summary: commitA
819 summary: commitA
813
820
814
821
815 strip backup content
822 strip backup content
816
823
817 $ hg log -r 'bundle()' -R .hg/strip-backup/6625a5168474-*-backup.hg
824 $ hg log -r 'bundle()' -R .hg/strip-backup/6625a5168474-*-backup.hg
818 changeset: 3:6625a5168474
825 changeset: 3:6625a5168474
819 parent: 1:eca11cf91c71
826 parent: 1:eca11cf91c71
820 user: test
827 user: test
821 date: Thu Jan 01 00:00:00 1970 +0000
828 date: Thu Jan 01 00:00:00 1970 +0000
822 summary: commitD
829 summary: commitD
823
830
824 changeset: 4:d8db9d137221
831 changeset: 4:d8db9d137221
825 tag: tip
832 tag: tip
826 parent: 2:5c51d8d6557d
833 parent: 2:5c51d8d6557d
827 parent: 3:6625a5168474
834 parent: 3:6625a5168474
828 user: test
835 user: test
829 date: Thu Jan 01 00:00:00 1970 +0000
836 date: Thu Jan 01 00:00:00 1970 +0000
830 summary: mergeCD
837 summary: mergeCD
831
838
832
839
833 Error during post-close callback of the strip transaction
840 Error during post-close callback of the strip transaction
834 (They should be gracefully handled and reported)
841 (They should be gracefully handled and reported)
835
842
836 $ cat > ../crashstrip.py << EOF
843 $ cat > ../crashstrip.py << EOF
837 > from mercurial import error
844 > from mercurial import error
838 > def reposetup(ui, repo):
845 > def reposetup(ui, repo):
839 > class crashstriprepo(repo.__class__):
846 > class crashstriprepo(repo.__class__):
840 > def transaction(self, desc, *args, **kwargs):
847 > def transaction(self, desc, *args, **kwargs):
841 > tr = super(crashstriprepo, self).transaction(self, desc, *args, **kwargs)
848 > tr = super(crashstriprepo, self).transaction(self, desc, *args, **kwargs)
842 > if desc == 'strip':
849 > if desc == 'strip':
843 > def crash(tra): raise error.Abort('boom')
850 > def crash(tra): raise error.Abort('boom')
844 > tr.addpostclose('crash', crash)
851 > tr.addpostclose('crash', crash)
845 > return tr
852 > return tr
846 > repo.__class__ = crashstriprepo
853 > repo.__class__ = crashstriprepo
847 > EOF
854 > EOF
848 $ hg strip tip --config extensions.crash=$TESTTMP/crashstrip.py
855 $ hg strip tip --config extensions.crash=$TESTTMP/crashstrip.py
849 saved backup bundle to $TESTTMP/issue4736/.hg/strip-backup/5c51d8d6557d-70daef06-backup.hg (glob)
856 saved backup bundle to $TESTTMP/issue4736/.hg/strip-backup/5c51d8d6557d-70daef06-backup.hg (glob)
850 strip failed, full bundle stored in '$TESTTMP/issue4736/.hg/strip-backup/5c51d8d6557d-70daef06-backup.hg' (glob)
857 strip failed, full bundle stored in '$TESTTMP/issue4736/.hg/strip-backup/5c51d8d6557d-70daef06-backup.hg' (glob)
851 abort: boom
858 abort: boom
852 [255]
859 [255]
853
860
854
861
General Comments 0
You need to be logged in to leave comments. Login now