diff --git a/tests/test-convert-filemap.out b/tests/test-convert-filemap.out new file mode 100644 --- /dev/null +++ b/tests/test-convert-filemap.out @@ -0,0 +1,154 @@ +@ 8 "8: change foo" files: foo +| +o 7 "7: second merge; change bar" files: bar baz +|\ +| o 6 "6: change foo baz" files: baz foo +| | +o | 5 "5: change bar baz quux" files: bar baz quux +|/ +o 4 "4: first merge; change bar baz" files: bar baz +|\ +| o 3 "3: change bar quux" files: bar quux +| | +o | 2 "2: change foo" files: foo +|/ +o 1 "1: add bar quux; copy foo to copied" files: bar copied quux +| +o 0 "0: add foo baz dir/" files: baz dir/file dir/file2 foo + +% final file versions in this repo: +9463f52fe115e377cf2878d4fc548117211063f2 644 bar +94c1be4dfde2ee8d78db8bbfcf81210813307c3d 644 baz +6ca237634e1f6bee1b6db94292fb44f092a25842 644 copied +3e20847584beff41d7cd16136b7331ab3d754be0 644 dir/file +75e6d3f8328f5f6ace6bf10b98df793416a09dca 644 dir/file2 +9a7b52012991e4873687192c3e17e61ba3e837a3 644 foo +bc3eca3f47023a3e70ca0d8cc95a22a6827db19d 644 quux +copied renamed from foo:2ed2a3912a0b24502043eae84ee4b279c18b90dd + +% foo: skip unwanted merges; use 1st parent in 1st merge, 2nd in 2nd +o 3 "8: change foo" files: foo +| +o 2 "6: change foo baz" files: foo +| +o 1 "2: change foo" files: foo +| +o 0 "0: add foo baz dir/" files: foo + +9a7b52012991e4873687192c3e17e61ba3e837a3 644 foo +% bar: merges are not merges anymore +o 4 "7: second merge; change bar" files: bar +| +o 3 "5: change bar baz quux" files: bar +| +o 2 "4: first merge; change bar baz" files: bar +| +o 1 "3: change bar quux" files: bar +| +o 0 "1: add bar quux; copy foo to copied" files: bar + +9463f52fe115e377cf2878d4fc548117211063f2 644 bar +% baz: 1st merge is not a merge anymore; 2nd still is +o 4 "7: second merge; change bar" files: baz +|\ +| o 3 "6: change foo baz" files: baz +| | +o | 2 "5: change bar baz quux" files: baz +|/ +o 1 "4: first merge; change bar baz" files: baz +| +o 0 "0: add foo baz dir/" files: baz + +94c1be4dfde2ee8d78db8bbfcf81210813307c3d 644 baz +% foo quux: we add additional merges when they are interesting +o 8 "8: change foo" files: foo +| +o 7 "7: second merge; change bar" files: +|\ +| o 6 "6: change foo baz" files: foo +| | +o | 5 "5: change bar baz quux" files: quux +|/ +o 4 "4: first merge; change bar baz" files: +|\ +| o 3 "3: change bar quux" files: quux +| | +o | 2 "2: change foo" files: foo +|/ +o 1 "1: add bar quux; copy foo to copied" files: quux +| +o 0 "0: add foo baz dir/" files: foo + +9a7b52012991e4873687192c3e17e61ba3e837a3 644 foo +bc3eca3f47023a3e70ca0d8cc95a22a6827db19d 644 quux +% bar quux: partial conversion +o 1 "3: change bar quux" files: bar quux +| +o 0 "1: add bar quux; copy foo to copied" files: bar quux + +b79105bedc55102f394e90a789c9c380117c1b4a 644 bar +db0421cc6b685a458c8d86c7d5c004f94429ea23 644 quux +% bar quux: complete the partial conversion +o 4 "7: second merge; change bar" files: bar +| +o 3 "5: change bar baz quux" files: bar quux +| +o 2 "4: first merge; change bar baz" files: bar +| +o 1 "3: change bar quux" files: bar quux +| +o 0 "1: add bar quux; copy foo to copied" files: bar quux + +9463f52fe115e377cf2878d4fc548117211063f2 644 bar +bc3eca3f47023a3e70ca0d8cc95a22a6827db19d 644 quux +% foo: partial conversion +o 0 "0: add foo baz dir/" files: foo + +2ed2a3912a0b24502043eae84ee4b279c18b90dd 644 foo +% foo: complete the partial conversion +o 3 "8: change foo" files: foo +| +o 2 "6: change foo baz" files: foo +| +o 1 "2: change foo" files: foo +| +o 0 "0: add foo baz dir/" files: foo + +9a7b52012991e4873687192c3e17e61ba3e837a3 644 foo +% copied: copied file; source not included in new repo +o 0 "1: add bar quux; copy foo to copied" files: copied + +2ed2a3912a0b24502043eae84ee4b279c18b90dd 644 copied +copied not renamed +% foo copied: copied file; source included in new repo +o 4 "8: change foo" files: foo +| +o 3 "6: change foo baz" files: foo +| +o 2 "2: change foo" files: foo +| +o 1 "1: add bar quux; copy foo to copied" files: copied +| +o 0 "0: add foo baz dir/" files: foo + +6ca237634e1f6bee1b6db94292fb44f092a25842 644 copied +9a7b52012991e4873687192c3e17e61ba3e837a3 644 foo +copied renamed from foo:2ed2a3912a0b24502043eae84ee4b279c18b90dd +o 4 "8: change foo" files: foo2 +| +o 3 "6: change foo baz" files: foo2 +| +o 2 "2: change foo" files: foo2 +| +o 1 "1: add bar quux; copy foo to copied" files: copied2 +| +o 0 "0: add foo baz dir/" files: dir2/file foo2 + +e5e3d520be9be45937d0b06b004fadcd6c221fa2 644 copied2 +3e20847584beff41d7cd16136b7331ab3d754be0 644 dir2/file +9a7b52012991e4873687192c3e17e61ba3e837a3 644 foo2 +copied2 renamed from foo2:2ed2a3912a0b24502043eae84ee4b279c18b90dd +copied: +foo +copied2: +foo