Mercurial > hg
comparison tests/test-copies-chain-merge.t @ 46543:f01696d45d1e
test-copies: add subcase titles for various "conflicting" information variant
This make the transitions between case clearer.
Differential Revision: https://phab.mercurial-scm.org/D10047
author | Pierre-Yves David <pierre-yves.david@octobus.net> |
---|---|
date | Thu, 18 Feb 2021 13:49:55 +0100 |
parents | f8888f5c8c50 |
children | fbc466484fc3 |
comparison
equal
deleted
inserted
replaced
46542:f8888f5c8c50 | 46543:f01696d45d1e |
---|---|
310 | 310 |
311 | 311 |
312 Comparing with a merge with colliding rename | 312 Comparing with a merge with colliding rename |
313 -------------------------------------------- | 313 -------------------------------------------- |
314 | 314 |
315 Subcase: new copy information on both side | |
316 `````````````````````````````````````````` | |
317 | |
315 - the "e-" branch renaming b to f (through 'g') | 318 - the "e-" branch renaming b to f (through 'g') |
316 - the "a-" branch renaming d to f (through e) | 319 - the "a-" branch renaming d to f (through e) |
317 | 320 |
318 $ case_desc="merge with copies info on both side - A side: rename d to f, E side: b to f, (same content for f)" | 321 $ case_desc="merge with copies info on both side - A side: rename d to f, E side: b to f, (same content for f)" |
319 | 322 |
351 o 1 i-1: a -move-> c | 354 o 1 i-1: a -move-> c |
352 | | 355 | |
353 o 0 i-0 initial commit: a b h | 356 o 0 i-0 initial commit: a b h |
354 | 357 |
355 | 358 |
359 Subcase: existing copy information overwritten on one branch | |
360 ```````````````````````````````````````````````````````````` | |
356 | 361 |
357 Merge: | 362 Merge: |
358 - one with change to an unrelated file (b) | 363 - one with change to an unrelated file (b) |
359 - one overwriting a file (d) with a rename (from h to i to d) | 364 - one overwriting a file (d) with a rename (from h to i to d) |
360 | 365 |
405 | | 410 | |
406 o 0 i-0 initial commit: a b h | 411 o 0 i-0 initial commit: a b h |
407 | 412 |
408 | 413 |
409 | 414 |
415 Subcase: reset of the copy history on one side | |
416 `````````````````````````````````````````````` | |
417 | |
410 Merge: | 418 Merge: |
411 - one with change to a file | 419 - one with change to a file |
412 - one deleting and recreating the file | 420 - one deleting and recreating the file |
413 | 421 |
414 Unlike in the 'BD/DB' cases, an actual merge happened here. So we should | 422 Unlike in the 'BD/DB' cases, an actual merge happened here. So we should |
453 o 1 i-1: a -move-> c | 461 o 1 i-1: a -move-> c |
454 | | 462 | |
455 o 0 i-0 initial commit: a b h | 463 o 0 i-0 initial commit: a b h |
456 | 464 |
457 | 465 |
466 Subcase: merging a change to a file with a "copy overwrite" to that file from another branch | |
467 ```````````````````````````````````````````````````````````````````````````````````````````` | |
458 | 468 |
459 Merge: | 469 Merge: |
460 - one with change to a file (d) | 470 - one with change to a file (d) |
461 - one overwriting that file with a rename (from h to i, to d) | 471 - one overwriting that file with a rename (from h to i, to d) |
462 | 472 |
1188 | 1198 |
1189 | 1199 |
1190 Comparing with a merge with colliding rename | 1200 Comparing with a merge with colliding rename |
1191 -------------------------------------------- | 1201 -------------------------------------------- |
1192 | 1202 |
1203 Subcase: new copy information on both side | |
1204 `````````````````````````````````````````` | |
1205 | |
1193 - the "e-" branch renaming b to f (through 'g') | 1206 - the "e-" branch renaming b to f (through 'g') |
1194 - the "a-" branch renaming d to f (through e) | 1207 - the "a-" branch renaming d to f (through e) |
1195 | 1208 |
1196 $ hg log -G --rev '::(desc("mAEm")+desc("mEAm"))' | 1209 $ hg log -G --rev '::(desc("mAEm")+desc("mEAm"))' |
1197 o 20 mEAm-0 merge with copies info on both side - A side: rename d to f, E side: b to f, (same content for f) - the other way | 1210 o 20 mEAm-0 merge with copies info on both side - A side: rename d to f, E side: b to f, (same content for f) - the other way |
1302 b (no-filelog !) | 1315 b (no-filelog !) |
1303 R a | 1316 R a |
1304 R b | 1317 R b |
1305 | 1318 |
1306 | 1319 |
1320 Subcase: existing copy information overwritten on one branch | |
1321 ```````````````````````````````````````````````````````````` | |
1322 | |
1307 Note: | 1323 Note: |
1308 | In this case, one of the merge wrongly record a merge while there is none. | 1324 | In this case, one of the merge wrongly record a merge while there is none. |
1309 | This lead to bad copy tracing information to be dug up. | 1325 | This lead to bad copy tracing information to be dug up. |
1310 | 1326 |
1311 | 1327 |
1395 o 2 i-2: c -move-> d | 1411 o 2 i-2: c -move-> d |
1396 | | 1412 | |
1397 ~ | 1413 ~ |
1398 #endif | 1414 #endif |
1399 | 1415 |
1416 Subcase: reset of the copy history on one side | |
1417 `````````````````````````````````````````````` | |
1400 | 1418 |
1401 Merge: | 1419 Merge: |
1402 - one with change to a file | 1420 - one with change to a file |
1403 - one deleting and recreating the file | 1421 - one deleting and recreating the file |
1404 | 1422 |
1500 o 2 i-2: c -move-> d | 1518 o 2 i-2: c -move-> d |
1501 | | 1519 | |
1502 ~ | 1520 ~ |
1503 #endif | 1521 #endif |
1504 | 1522 |
1523 Subcase: merging a change to a file with a "copy overwrite" to that file from another branch | |
1524 ```````````````````````````````````````````````````````````````````````````````````````````` | |
1505 | 1525 |
1506 Merge: | 1526 Merge: |
1507 - one with change to a file (d) | 1527 - one with change to a file (d) |
1508 - one overwriting that file with a rename (from h to i, to d) | 1528 - one overwriting that file with a rename (from h to i, to d) |
1509 | 1529 |