Mercurial > evolve
comparison tests/test-evolve-orphan-merge.t @ 3936:537fd9a86c06 mercurial-4.3
test-compat: merge mercurial-4.4 into mercurial-4.3
author | Pierre-Yves David <pierre-yves.david@octobus.net> |
---|---|
date | Fri, 03 Aug 2018 00:22:50 +0200 |
parents | a77fb9669e99 d00f0c369bc7 |
children | e07e764c0f48 |
comparison
equal
deleted
inserted
replaced
3935:9af0e2b0bdd7 | 3936:537fd9a86c06 |
---|---|
49 | 49 |
50 $ hg up d76850646258 | 50 $ hg up d76850646258 |
51 0 files updated, 0 files merged, 1 files removed, 0 files unresolved | 51 0 files updated, 0 files merged, 1 files removed, 0 files unresolved |
52 $ echo bar > b | 52 $ echo bar > b |
53 $ hg amend | 53 $ hg amend |
54 1 new orphan changesets | 54 1 new unstable changesets |
55 | 55 |
56 $ hg glog | 56 $ hg glog |
57 @ 4:64370c9805e7 added b | 57 @ 5:64370c9805e7 added b |
58 | () draft | 58 | () draft |
59 | o 3:3b2b6f4652ee merging a and b | 59 | o 3:3b2b6f4652ee merging a and b |
60 | |\ () draft | 60 | |\ () draft |
61 +---x 2:d76850646258 added b | 61 +---x 2:d76850646258 added b |
62 | | () draft | 62 | | () draft |
65 o 0:8fa14d15e168 added hgignore | 65 o 0:8fa14d15e168 added hgignore |
66 () draft | 66 () draft |
67 | 67 |
68 $ hg evolve --all | 68 $ hg evolve --all |
69 move:[3] merging a and b | 69 move:[3] merging a and b |
70 atop:[4] added b | 70 atop:[5] added b |
71 working directory is now at 91fd62122a4b | 71 working directory is now at 91fd62122a4b |
72 | 72 |
73 $ hg glog | 73 $ hg glog |
74 @ 5:91fd62122a4b merging a and b | 74 @ 6:91fd62122a4b merging a and b |
75 |\ () draft | 75 |\ () draft |
76 | o 4:64370c9805e7 added b | 76 | o 5:64370c9805e7 added b |
77 | | () draft | 77 | | () draft |
78 o | 1:c7586e2a9264 added a | 78 o | 1:c7586e2a9264 added a |
79 |/ () draft | 79 |/ () draft |
80 o 0:8fa14d15e168 added hgignore | 80 o 0:8fa14d15e168 added hgignore |
81 () draft | 81 () draft |
82 | 82 |
83 $ hg parents | 83 $ hg parents |
84 changeset: 5:91fd62122a4b | 84 changeset: 6:91fd62122a4b |
85 tag: tip | 85 tag: tip |
86 parent: 4:64370c9805e7 | 86 parent: 5:64370c9805e7 |
87 parent: 1:c7586e2a9264 | 87 parent: 1:c7586e2a9264 |
88 user: test | 88 user: test |
89 date: Thu Jan 01 00:00:00 1970 +0000 | 89 date: Thu Jan 01 00:00:00 1970 +0000 |
90 summary: merging a and b | 90 summary: merging a and b |
91 | 91 |
94 | 94 |
95 $ hg up c7586e2a9264 | 95 $ hg up c7586e2a9264 |
96 0 files updated, 0 files merged, 1 files removed, 0 files unresolved | 96 0 files updated, 0 files merged, 1 files removed, 0 files unresolved |
97 $ echo bar > a | 97 $ echo bar > a |
98 $ hg amend | 98 $ hg amend |
99 1 new orphan changesets | 99 1 new unstable changesets |
100 | 100 |
101 $ hg glog | 101 $ hg glog |
102 @ 6:3d41537b44ca added a | 102 @ 8:3d41537b44ca added a |
103 | () draft | 103 | () draft |
104 | o 5:91fd62122a4b merging a and b | 104 | o 6:91fd62122a4b merging a and b |
105 | |\ () draft | 105 | |\ () draft |
106 +---o 4:64370c9805e7 added b | 106 +---o 5:64370c9805e7 added b |
107 | | () draft | 107 | | () draft |
108 | x 1:c7586e2a9264 added a | 108 | x 1:c7586e2a9264 added a |
109 |/ () draft | 109 |/ () draft |
110 o 0:8fa14d15e168 added hgignore | 110 o 0:8fa14d15e168 added hgignore |
111 () draft | 111 () draft |
112 | 112 |
113 $ hg evolve --all | 113 $ hg evolve --all |
114 move:[5] merging a and b | 114 move:[6] merging a and b |
115 atop:[6] added a | 115 atop:[8] added a |
116 working directory is now at 968d205ba4d8 | 116 working directory is now at 968d205ba4d8 |
117 | 117 |
118 $ hg glog | 118 $ hg glog |
119 @ 7:968d205ba4d8 merging a and b | 119 @ 9:968d205ba4d8 merging a and b |
120 |\ () draft | 120 |\ () draft |
121 | o 6:3d41537b44ca added a | 121 | o 8:3d41537b44ca added a |
122 | | () draft | 122 | | () draft |
123 o | 4:64370c9805e7 added b | 123 o | 5:64370c9805e7 added b |
124 |/ () draft | 124 |/ () draft |
125 o 0:8fa14d15e168 added hgignore | 125 o 0:8fa14d15e168 added hgignore |
126 () draft | 126 () draft |
127 | 127 |
128 $ hg parents | 128 $ hg parents |
129 changeset: 7:968d205ba4d8 | 129 changeset: 9:968d205ba4d8 |
130 tag: tip | 130 tag: tip |
131 parent: 6:3d41537b44ca | 131 parent: 8:3d41537b44ca |
132 parent: 4:64370c9805e7 | 132 parent: 5:64370c9805e7 |
133 user: test | 133 user: test |
134 date: Thu Jan 01 00:00:00 1970 +0000 | 134 date: Thu Jan 01 00:00:00 1970 +0000 |
135 summary: merging a and b | 135 summary: merging a and b |
136 | 136 |
137 2) When merging both the parents resulted in conflicts | 137 2) When merging both the parents resulted in conflicts |
146 [0] added hgignore | 146 [0] added hgignore |
147 $ echo bar > c | 147 $ echo bar > c |
148 $ hg ci -Aqm "bar to c" | 148 $ hg ci -Aqm "bar to c" |
149 | 149 |
150 $ hg glog | 150 $ hg glog |
151 @ 9:d0f84b25d4e3 bar to c | 151 @ 11:d0f84b25d4e3 bar to c |
152 | () draft | 152 | () draft |
153 | o 8:1c165c673853 foo to c | 153 | o 10:1c165c673853 foo to c |
154 |/ () draft | 154 |/ () draft |
155 | o 7:968d205ba4d8 merging a and b | 155 | o 9:968d205ba4d8 merging a and b |
156 | |\ () draft | 156 | |\ () draft |
157 +---o 6:3d41537b44ca added a | 157 +---o 8:3d41537b44ca added a |
158 | | () draft | 158 | | () draft |
159 | o 4:64370c9805e7 added b | 159 | o 5:64370c9805e7 added b |
160 |/ () draft | 160 |/ () draft |
161 o 0:8fa14d15e168 added hgignore | 161 o 0:8fa14d15e168 added hgignore |
162 () draft | 162 () draft |
163 | 163 |
164 Prune old test changesets to have clear graph view | 164 Prune old test changesets to have clear graph view |
165 $ hg prune -r 64370c9805e7 -r 3d41537b44ca -r 968d205ba4d8 | 165 $ hg prune -r 64370c9805e7 -r 3d41537b44ca -r 968d205ba4d8 |
166 3 changesets pruned | 166 3 changesets pruned |
167 | 167 |
168 $ hg glog | 168 $ hg glog |
169 @ 9:d0f84b25d4e3 bar to c | 169 @ 11:d0f84b25d4e3 bar to c |
170 | () draft | 170 | () draft |
171 | o 8:1c165c673853 foo to c | 171 | o 10:1c165c673853 foo to c |
172 |/ () draft | 172 |/ () draft |
173 o 0:8fa14d15e168 added hgignore | 173 o 0:8fa14d15e168 added hgignore |
174 () draft | 174 () draft |
175 | 175 |
176 $ hg merge | 176 $ hg merge |
183 $ hg resolve -m | 183 $ hg resolve -m |
184 (no more unresolved files) | 184 (no more unresolved files) |
185 $ hg ci -m "foobar to c" | 185 $ hg ci -m "foobar to c" |
186 | 186 |
187 $ hg glog | 187 $ hg glog |
188 @ 10:fd41d25a3e90 foobar to c | 188 @ 12:fd41d25a3e90 foobar to c |
189 |\ () draft | 189 |\ () draft |
190 | o 9:d0f84b25d4e3 bar to c | 190 | o 11:d0f84b25d4e3 bar to c |
191 | | () draft | 191 | | () draft |
192 o | 8:1c165c673853 foo to c | 192 o | 10:1c165c673853 foo to c |
193 |/ () draft | 193 |/ () draft |
194 o 0:8fa14d15e168 added hgignore | 194 o 0:8fa14d15e168 added hgignore |
195 () draft | 195 () draft |
196 | 196 |
197 Testing with first parent obsoleted | 197 Testing with first parent obsoleted |
198 | 198 |
199 $ hg up 1c165c673853 | 199 $ hg up 1c165c673853 |
200 1 files updated, 0 files merged, 0 files removed, 0 files unresolved | 200 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
201 $ echo FOO > c | 201 $ echo FOO > c |
202 $ hg amend | 202 $ hg amend |
203 1 new orphan changesets | 203 1 new unstable changesets |
204 | 204 |
205 $ hg glog | 205 $ hg glog |
206 @ 11:31c317b7bdb1 foo to c | 206 @ 14:31c317b7bdb1 foo to c |
207 | () draft | 207 | () draft |
208 | o 10:fd41d25a3e90 foobar to c | 208 | o 12:fd41d25a3e90 foobar to c |
209 | |\ () draft | 209 | |\ () draft |
210 +---o 9:d0f84b25d4e3 bar to c | 210 +---o 11:d0f84b25d4e3 bar to c |
211 | | () draft | 211 | | () draft |
212 | x 8:1c165c673853 foo to c | 212 | x 10:1c165c673853 foo to c |
213 |/ () draft | 213 |/ () draft |
214 o 0:8fa14d15e168 added hgignore | 214 o 0:8fa14d15e168 added hgignore |
215 () draft | 215 () draft |
216 | 216 |
217 $ hg evolve --all | 217 $ hg evolve --all |
218 move:[10] foobar to c | 218 move:[12] foobar to c |
219 atop:[11] foo to c | 219 atop:[14] foo to c |
220 merging c | 220 merging c |
221 warning: conflicts while merging c! (edit, then use 'hg resolve --mark') | 221 warning: conflicts while merging c! (edit, then use 'hg resolve --mark') |
222 fix conflicts and see `hg help evolve.interrupted` | 222 fix conflicts and see `hg help evolve.interrupted` |
223 [1] | 223 [1] |
224 | 224 |
225 $ echo FOObar > c | 225 $ echo FOObar > c |
226 $ hg resolve -m | 226 $ hg resolve -m |
227 (no more unresolved files) | 227 (no more unresolved files) |
228 continue: hg evolve --continue | 228 continue: hg evolve --continue |
229 $ hg evolve --continue | 229 $ hg evolve --continue |
230 evolving 10:fd41d25a3e90 "foobar to c" | 230 evolving 12:fd41d25a3e90 "foobar to c" |
231 working directory is now at c5405d2da7a1 | 231 working directory is now at c5405d2da7a1 |
232 | 232 |
233 $ hg glog | 233 $ hg glog |
234 @ 12:c5405d2da7a1 foobar to c | 234 @ 15:c5405d2da7a1 foobar to c |
235 |\ () draft | 235 |\ () draft |
236 | o 11:31c317b7bdb1 foo to c | 236 | o 14:31c317b7bdb1 foo to c |
237 | | () draft | 237 | | () draft |
238 o | 9:d0f84b25d4e3 bar to c | 238 o | 11:d0f84b25d4e3 bar to c |
239 |/ () draft | 239 |/ () draft |
240 o 0:8fa14d15e168 added hgignore | 240 o 0:8fa14d15e168 added hgignore |
241 () draft | 241 () draft |
242 | 242 |
243 $ hg parents | 243 $ hg parents |
244 changeset: 12:c5405d2da7a1 | 244 changeset: 15:c5405d2da7a1 |
245 tag: tip | 245 tag: tip |
246 parent: 9:d0f84b25d4e3 | 246 parent: 11:d0f84b25d4e3 |
247 parent: 11:31c317b7bdb1 | 247 parent: 14:31c317b7bdb1 |
248 user: test | 248 user: test |
249 date: Thu Jan 01 00:00:00 1970 +0000 | 249 date: Thu Jan 01 00:00:00 1970 +0000 |
250 summary: foobar to c | 250 summary: foobar to c |
251 | 251 |
252 Testing a conlficting merge with second parent obsoleted | 252 Testing a conlficting merge with second parent obsoleted |
253 | 253 |
254 $ hg up 31c317b7bdb1 | 254 $ hg up 31c317b7bdb1 |
255 1 files updated, 0 files merged, 0 files removed, 0 files unresolved | 255 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
256 $ echo foo > c | 256 $ echo foo > c |
257 $ hg amend | 257 $ hg amend |
258 1 new orphan changesets | 258 1 new unstable changesets |
259 | 259 |
260 $ hg glog | 260 $ hg glog |
261 @ 13:928097d0b5b5 foo to c | 261 @ 17:928097d0b5b5 foo to c |
262 | () draft | 262 | () draft |
263 | o 12:c5405d2da7a1 foobar to c | 263 | o 15:c5405d2da7a1 foobar to c |
264 | |\ () draft | 264 | |\ () draft |
265 +---x 11:31c317b7bdb1 foo to c | 265 +---x 14:31c317b7bdb1 foo to c |
266 | | () draft | 266 | | () draft |
267 | o 9:d0f84b25d4e3 bar to c | 267 | o 11:d0f84b25d4e3 bar to c |
268 |/ () draft | 268 |/ () draft |
269 o 0:8fa14d15e168 added hgignore | 269 o 0:8fa14d15e168 added hgignore |
270 () draft | 270 () draft |
271 | 271 |
272 $ hg evolve --all | 272 $ hg evolve --all |
273 move:[12] foobar to c | 273 move:[15] foobar to c |
274 atop:[13] foo to c | 274 atop:[17] foo to c |
275 merging c | 275 merging c |
276 warning: conflicts while merging c! (edit, then use 'hg resolve --mark') | 276 warning: conflicts while merging c! (edit, then use 'hg resolve --mark') |
277 fix conflicts and see `hg help evolve.interrupted` | 277 fix conflicts and see `hg help evolve.interrupted` |
278 [1] | 278 [1] |
279 | 279 |
281 $ hg resolve -m | 281 $ hg resolve -m |
282 (no more unresolved files) | 282 (no more unresolved files) |
283 continue: hg evolve --continue | 283 continue: hg evolve --continue |
284 | 284 |
285 $ hg evolve --continue | 285 $ hg evolve --continue |
286 evolving 12:c5405d2da7a1 "foobar to c" | 286 evolving 15:c5405d2da7a1 "foobar to c" |
287 working directory is now at dc1948a6eeab | 287 working directory is now at dc1948a6eeab |
288 | 288 |
289 $ hg glog | 289 $ hg glog |
290 @ 14:dc1948a6eeab foobar to c | 290 @ 18:dc1948a6eeab foobar to c |
291 |\ () draft | 291 |\ () draft |
292 | o 13:928097d0b5b5 foo to c | 292 | o 17:928097d0b5b5 foo to c |
293 | | () draft | 293 | | () draft |
294 o | 9:d0f84b25d4e3 bar to c | 294 o | 11:d0f84b25d4e3 bar to c |
295 |/ () draft | 295 |/ () draft |
296 o 0:8fa14d15e168 added hgignore | 296 o 0:8fa14d15e168 added hgignore |
297 () draft | 297 () draft |
298 | 298 |
299 3) When stabilizing other changesets resulted in orphan merge changeset | 299 3) When stabilizing other changesets resulted in orphan merge changeset |
307 $ for ch in l m; do echo foo > $ch; hg ci -Aqm "added "$ch; done; | 307 $ for ch in l m; do echo foo > $ch; hg ci -Aqm "added "$ch; done; |
308 $ hg up 8fa14d15e168 | 308 $ hg up 8fa14d15e168 |
309 0 files updated, 0 files merged, 2 files removed, 0 files unresolved | 309 0 files updated, 0 files merged, 2 files removed, 0 files unresolved |
310 $ for ch in x y; do echo foo > $ch; hg ci -Aqm "added "$ch; done; | 310 $ for ch in x y; do echo foo > $ch; hg ci -Aqm "added "$ch; done; |
311 $ hg glog | 311 $ hg glog |
312 @ 18:863d11043c67 added y | 312 @ 22:863d11043c67 added y |
313 | () draft | 313 | () draft |
314 o 17:3f2247835c1d added x | 314 o 21:3f2247835c1d added x |
315 | () draft | 315 | () draft |
316 | o 16:e44dc179e7f5 added m | 316 | o 20:e44dc179e7f5 added m |
317 | | () draft | 317 | | () draft |
318 | o 15:8634bee7bf1e added l | 318 | o 19:8634bee7bf1e added l |
319 |/ () draft | 319 |/ () draft |
320 o 0:8fa14d15e168 added hgignore | 320 o 0:8fa14d15e168 added hgignore |
321 () draft | 321 () draft |
322 | 322 |
323 $ hg merge | 323 $ hg merge |
327 | 327 |
328 $ hg up 8634bee7bf1e | 328 $ hg up 8634bee7bf1e |
329 0 files updated, 0 files merged, 3 files removed, 0 files unresolved | 329 0 files updated, 0 files merged, 3 files removed, 0 files unresolved |
330 $ echo bar > l | 330 $ echo bar > l |
331 $ hg amend | 331 $ hg amend |
332 2 new orphan changesets | 332 2 new unstable changesets |
333 | 333 |
334 $ hg glog | 334 $ hg glog |
335 @ 20:fccc9de66799 added l | 335 @ 25:fccc9de66799 added l |
336 | () draft | 336 | () draft |
337 | o 19:190763373d8b merge commit | 337 | o 23:190763373d8b merge commit |
338 | |\ () draft | 338 | |\ () draft |
339 | | o 18:863d11043c67 added y | 339 | | o 22:863d11043c67 added y |
340 | | | () draft | 340 | | | () draft |
341 +---o 17:3f2247835c1d added x | 341 +---o 21:3f2247835c1d added x |
342 | | () draft | 342 | | () draft |
343 | o 16:e44dc179e7f5 added m | 343 | o 20:e44dc179e7f5 added m |
344 | | () draft | 344 | | () draft |
345 | x 15:8634bee7bf1e added l | 345 | x 19:8634bee7bf1e added l |
346 |/ () draft | 346 |/ () draft |
347 o 0:8fa14d15e168 added hgignore | 347 o 0:8fa14d15e168 added hgignore |
348 () draft | 348 () draft |
349 $ hg evolve --all | 349 $ hg evolve --all |
350 move:[16] added m | 350 move:[20] added m |
351 atop:[20] added l | 351 atop:[25] added l |
352 move:[19] merge commit | 352 move:[23] merge commit |
353 atop:[21] added m | 353 atop:[26] added m |
354 working directory is now at a446ad3e6700 | 354 working directory is now at a446ad3e6700 |
355 | 355 |
356 $ hg glog | 356 $ hg glog |
357 @ 22:a446ad3e6700 merge commit | 357 @ 27:a446ad3e6700 merge commit |
358 |\ () draft | 358 |\ () draft |
359 | o 21:495d2039f8f1 added m | 359 | o 26:495d2039f8f1 added m |
360 | | () draft | 360 | | () draft |
361 | o 20:fccc9de66799 added l | 361 | o 25:fccc9de66799 added l |
362 | | () draft | 362 | | () draft |
363 o | 18:863d11043c67 added y | 363 o | 22:863d11043c67 added y |
364 | | () draft | 364 | | () draft |
365 o | 17:3f2247835c1d added x | 365 o | 21:3f2247835c1d added x |
366 |/ () draft | 366 |/ () draft |
367 o 0:8fa14d15e168 added hgignore | 367 o 0:8fa14d15e168 added hgignore |
368 () draft | 368 () draft |
369 | 369 |
370 4) When both the parents of the merge changeset are obsolete with a succ | 370 4) When both the parents of the merge changeset are obsolete with a succ |
374 0 files updated, 0 files merged, 3 files removed, 0 files unresolved | 374 0 files updated, 0 files merged, 3 files removed, 0 files unresolved |
375 working directory now at fccc9de66799 | 375 working directory now at fccc9de66799 |
376 3 changesets pruned | 376 3 changesets pruned |
377 | 377 |
378 $ hg glog | 378 $ hg glog |
379 @ 20:fccc9de66799 added l | 379 @ 25:fccc9de66799 added l |
380 | () draft | 380 | () draft |
381 | o 17:3f2247835c1d added x | 381 | o 21:3f2247835c1d added x |
382 |/ () draft | 382 |/ () draft |
383 o 0:8fa14d15e168 added hgignore | 383 o 0:8fa14d15e168 added hgignore |
384 () draft | 384 () draft |
385 | 385 |
386 $ hg merge | 386 $ hg merge |
390 | 390 |
391 $ hg up fccc9de66799 | 391 $ hg up fccc9de66799 |
392 0 files updated, 0 files merged, 1 files removed, 0 files unresolved | 392 0 files updated, 0 files merged, 1 files removed, 0 files unresolved |
393 $ echo foobar > l | 393 $ echo foobar > l |
394 $ hg amend | 394 $ hg amend |
395 1 new orphan changesets | 395 1 new unstable changesets |
396 $ hg up 3f2247835c1d | 396 $ hg up 3f2247835c1d |
397 1 files updated, 0 files merged, 1 files removed, 0 files unresolved | 397 1 files updated, 0 files merged, 1 files removed, 0 files unresolved |
398 $ echo bar > x | 398 $ echo bar > x |
399 $ hg amend | 399 $ hg amend |
400 $ hg glog | 400 $ hg glog |
401 @ 25:cdf6547da25f added x | 401 @ 32:cdf6547da25f added x |
402 | () draft | 402 | () draft |
403 | o 24:3f371171d767 added l | 403 | o 30:3f371171d767 added l |
404 |/ () draft | 404 |/ () draft |
405 | o 23:7b78a9784f3e merged l and x | 405 | o 28:7b78a9784f3e merged l and x |
406 | |\ () draft | 406 | |\ () draft |
407 +---x 20:fccc9de66799 added l | 407 +---x 25:fccc9de66799 added l |
408 | | () draft | 408 | | () draft |
409 | x 17:3f2247835c1d added x | 409 | x 21:3f2247835c1d added x |
410 |/ () draft | 410 |/ () draft |
411 o 0:8fa14d15e168 added hgignore | 411 o 0:8fa14d15e168 added hgignore |
412 () draft | 412 () draft |
413 | 413 |
414 XXX: We should handle this case too | 414 XXX: We should handle this case too |
415 $ hg evolve --all | 415 $ hg evolve --all |
416 move:[23] merged l and x | 416 move:[28] merged l and x |
417 atop:[25] added x | 417 atop:[32] added x |
418 move:[26] merged l and x | 418 move:[33] merged l and x |
419 atop:[24] added l | 419 atop:[30] added l |
420 working directory is now at adb665a78e08 | 420 working directory is now at adb665a78e08 |
421 | 421 |
422 $ hg glog | 422 $ hg glog |
423 @ 27:adb665a78e08 merged l and x | 423 @ 34:adb665a78e08 merged l and x |
424 |\ () draft | 424 |\ () draft |
425 | o 25:cdf6547da25f added x | 425 | o 32:cdf6547da25f added x |
426 | | () draft | 426 | | () draft |
427 o | 24:3f371171d767 added l | 427 o | 30:3f371171d767 added l |
428 |/ () draft | 428 |/ () draft |
429 o 0:8fa14d15e168 added hgignore | 429 o 0:8fa14d15e168 added hgignore |
430 () draft | 430 () draft |
431 | 431 |
432 $ hg exp | 432 $ hg exp |
444 +++ b/x Thu Jan 01 00:00:00 1970 +0000 | 444 +++ b/x Thu Jan 01 00:00:00 1970 +0000 |
445 @@ -0,0 +1,1 @@ | 445 @@ -0,0 +1,1 @@ |
446 +bar | 446 +bar |
447 | 447 |
448 $ hg parents | 448 $ hg parents |
449 changeset: 27:adb665a78e08 | 449 changeset: 34:adb665a78e08 |
450 tag: tip | 450 tag: tip |
451 parent: 24:3f371171d767 | 451 parent: 30:3f371171d767 |
452 parent: 25:cdf6547da25f | 452 parent: 32:cdf6547da25f |
453 user: test | 453 user: test |
454 date: Thu Jan 01 00:00:00 1970 +0000 | 454 date: Thu Jan 01 00:00:00 1970 +0000 |
455 summary: merged l and x | 455 summary: merged l and x |
456 | 456 |
457 | 457 |
458 5) When one of the merge parent is pruned without a successor | 458 5) When one of the merge parent is pruned without a successor |
459 ------------------------------------------------------------- | 459 ------------------------------------------------------------- |
460 | 460 |
461 $ hg prune -r cdf6547da25f | 461 $ hg prune -r cdf6547da25f |
462 1 changesets pruned | 462 1 changesets pruned |
463 1 new orphan changesets | 463 1 new unstable changesets |
464 $ hg glog | 464 $ hg glog |
465 @ 27:adb665a78e08 merged l and x | 465 @ 34:adb665a78e08 merged l and x |
466 |\ () draft | 466 |\ () draft |
467 | x 25:cdf6547da25f added x | 467 | x 32:cdf6547da25f added x |
468 | | () draft | 468 | | () draft |
469 o | 24:3f371171d767 added l | 469 o | 30:3f371171d767 added l |
470 |/ () draft | 470 |/ () draft |
471 o 0:8fa14d15e168 added hgignore | 471 o 0:8fa14d15e168 added hgignore |
472 () draft | 472 () draft |
473 | 473 |
474 $ hg evolve --rev . | 474 $ hg evolve --rev . |
475 move:[27] merged l and x | 475 move:[34] merged l and x |
476 atop:[0] added hgignore | 476 atop:[0] added hgignore |
477 working directory is now at fb8fe870ae7d | 477 working directory is now at fb8fe870ae7d |
478 | 478 |
479 $ hg glog | 479 $ hg glog |
480 @ 28:fb8fe870ae7d merged l and x | 480 @ 35:fb8fe870ae7d merged l and x |
481 |\ () draft | 481 |\ () draft |
482 | o 24:3f371171d767 added l | 482 | o 30:3f371171d767 added l |
483 |/ () draft | 483 |/ () draft |
484 o 0:8fa14d15e168 added hgignore | 484 o 0:8fa14d15e168 added hgignore |
485 () draft | 485 () draft |
486 | 486 |
487 6) When one parent is pruned without successor and the other parent of merge is | 487 6) When one parent is pruned without successor and the other parent of merge is |
488 the parent of the pruned commit | 488 the parent of the pruned commit |
489 -------------------------------------------------------------------------------- | 489 -------------------------------------------------------------------------------- |
490 | 490 |
491 $ hg glog | 491 $ hg glog |
492 @ 28:fb8fe870ae7d merged l and x | 492 @ 35:fb8fe870ae7d merged l and x |
493 |\ () draft | 493 |\ () draft |
494 | o 24:3f371171d767 added l | 494 | o 30:3f371171d767 added l |
495 |/ () draft | 495 |/ () draft |
496 o 0:8fa14d15e168 added hgignore | 496 o 0:8fa14d15e168 added hgignore |
497 () draft | 497 () draft |
498 | 498 |
499 $ hg prune -r 3f371171d767 | 499 $ hg prune -r 3f371171d767 |
500 1 changesets pruned | 500 1 changesets pruned |
501 1 new orphan changesets | 501 1 new unstable changesets |
502 | 502 |
503 $ hg glog | 503 $ hg glog |
504 @ 28:fb8fe870ae7d merged l and x | 504 @ 35:fb8fe870ae7d merged l and x |
505 |\ () draft | 505 |\ () draft |
506 | x 24:3f371171d767 added l | 506 | x 30:3f371171d767 added l |
507 |/ () draft | 507 |/ () draft |
508 o 0:8fa14d15e168 added hgignore | 508 o 0:8fa14d15e168 added hgignore |
509 () draft | 509 () draft |
510 | 510 |
511 This is the right thing to do here. When you have a merge changeset, and one | 511 This is the right thing to do here. When you have a merge changeset, and one |
527 that branch and they prune all their changeset, which will result in this | 527 that branch and they prune all their changeset, which will result in this |
528 case where merge commit becomes orphan with its ancestors pruned up until a | 528 case where merge commit becomes orphan with its ancestors pruned up until a |
529 point where the other parent of merge is the first non-pruned ancestor. | 529 point where the other parent of merge is the first non-pruned ancestor. |
530 | 530 |
531 $ hg evolve -r . | 531 $ hg evolve -r . |
532 move:[28] merged l and x | 532 move:[35] merged l and x |
533 atop:[0] added hgignore | 533 atop:[0] added hgignore |
534 working directory is now at b61ba77b924a | 534 working directory is now at b61ba77b924a |
535 | 535 |
536 $ hg glog | 536 $ hg glog |
537 @ 29:b61ba77b924a merged l and x | 537 @ 36:b61ba77b924a merged l and x |
538 | () draft | 538 | () draft |
539 o 0:8fa14d15e168 added hgignore | 539 o 0:8fa14d15e168 added hgignore |
540 () draft | 540 () draft |
541 | 541 |
542 7) When one parent is pruned without successor and has no parent | 542 7) When one parent is pruned without successor and has no parent |
557 $ hg merge | 557 $ hg merge |
558 1 files updated, 0 files merged, 0 files removed, 0 files unresolved | 558 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
559 (branch merge, don't forget to commit) | 559 (branch merge, don't forget to commit) |
560 $ hg ci -m "merge commit" | 560 $ hg ci -m "merge commit" |
561 $ hg glog | 561 $ hg glog |
562 @ 31:32beb84b9dbc merge commit | 562 @ 38:32beb84b9dbc merge commit |
563 |\ () draft | 563 |\ () draft |
564 | o 30:f3ba8b99bb6f added foo | 564 | o 37:f3ba8b99bb6f added foo |
565 | () draft | 565 | () draft |
566 o 0:8fa14d15e168 added hgignore | 566 o 0:8fa14d15e168 added hgignore |
567 () draft | 567 () draft |
568 | 568 |
569 $ hg prune -r f3ba8b99bb6f | 569 $ hg prune -r f3ba8b99bb6f |
570 1 changesets pruned | 570 1 changesets pruned |
571 1 new orphan changesets | 571 1 new unstable changesets |
572 | 572 |
573 $ hg glog | 573 $ hg glog |
574 @ 31:32beb84b9dbc merge commit | 574 @ 38:32beb84b9dbc merge commit |
575 |\ () draft | 575 |\ () draft |
576 | x 30:f3ba8b99bb6f added foo | 576 | x 37:f3ba8b99bb6f added foo |
577 | () draft | 577 | () draft |
578 o 0:8fa14d15e168 added hgignore | 578 o 0:8fa14d15e168 added hgignore |
579 () draft | 579 () draft |
580 | 580 |
581 The current behavior seems to be the correct behavior in the above case. This is | 581 The current behavior seems to be the correct behavior in the above case. This is |
589 | 589 |
590 becomes redundant as the changeset is pruned without successor and we should | 590 becomes redundant as the changeset is pruned without successor and we should |
591 just remove that chain. | 591 just remove that chain. |
592 | 592 |
593 $ hg evolve -r . | 593 $ hg evolve -r . |
594 move:[31] merge commit | 594 move:[38] merge commit |
595 atop:[-1] | 595 atop:[-1] |
596 working directory is now at d2a03dd8c951 | 596 working directory is now at d2a03dd8c951 |
597 | 597 |
598 $ hg glog | 598 $ hg glog |
599 @ 32:d2a03dd8c951 merge commit | 599 @ 39:d2a03dd8c951 merge commit |
600 | () draft | 600 | () draft |
601 o 0:8fa14d15e168 added hgignore | 601 o 0:8fa14d15e168 added hgignore |
602 () draft | 602 () draft |