diff for duplicates of <eff8bfcc04278eeae658ffbff8317f822edb9b20.1696019580.git.gitgitgadget@gmail.com> diff --git a/a/1.txt b/N1/1.txt index 7a0c85e..de99f95 100644 --- a/a/1.txt +++ b/N1/1.txt @@ -1,82 +1,90 @@ -From: Zach FettersMoore <zach.fetters@apollographql•com> +From: "Zach FettersMoore via GitGitGadget" <gitgitgadget@gmail•com> -Adding a test to validate that the proposed fix -solves the issue. +> From: Zach FettersMoore <zach.fetters@apollographql•com> +> +> Adding a test to validate that the proposed fix +> solves the issue. +> +> The test accomplishes this by checking the output +> of the split command to ensure the output from +> the progress of 'process_split_commit' function +> that represents the 'extracount' of commits +> processed does not increment. +> +> This was tested against the original functionality +> to show the test failed, and then with this fix +> to show the test passes. +> +> This illustrated that when using multiple subtrees, +> A and B, when doing a split on subtree B, the +> processing does not traverse the entire history +> of subtree A which is unnecessary and would cause +> the 'extracount' of processed commits to climb +> based on the number of commits in the history of +> subtree A. +> +> Signed-off-by: Zach FettersMoore <zach.fetters@apollographql•com> +> --- +> contrib/subtree/t/t7900-subtree.sh | 41 ++++++++++++++++++++++++++++++ +> 1 file changed, 41 insertions(+) +> +> diff --git a/contrib/subtree/t/t7900-subtree.sh b/contrib/subtree/t/t7900-subtree.sh +> index 49a21dd7c9c..57c12e9f924 100755 +> --- a/contrib/subtree/t/t7900-subtree.sh +> +++ b/contrib/subtree/t/t7900-subtree.sh +> @@ -385,6 +385,47 @@ test_expect_success 'split sub dir/ with --rejoin' ' +> ) +> ' +> +> +test_expect_success 'split with multiple subtrees' ' +> + subtree_test_create_repo "$test_count" && +> + subtree_test_create_repo "$test_count/subA" && +> + subtree_test_create_repo "$test_count/subB" && +> + test_create_commit "$test_count" main1 && +> + test_create_commit "$test_count/subA" subA1 && +> + test_create_commit "$test_count/subA" subA2 && +> + test_create_commit "$test_count/subA" subA3 && +> + test_create_commit "$test_count/subB" subB1 && +> + ( +> + cd "$test_count" && +> + git fetch ./subA HEAD && +> + git subtree add --prefix=subADir FETCH_HEAD +> + ) && +> + ( +> + cd "$test_count" && +> + git fetch ./subB HEAD && +> + git subtree add --prefix=subBDir FETCH_HEAD +> + ) && +> + test_create_commit "$test_count" subADir/main-subA1 && +> + test_create_commit "$test_count" subBDir/main-subB1 && +> + ( +> + cd "$test_count" && +> + git subtree split --prefix=subADir --squash --rejoin -m "Sub A Split 1" +> + ) && +> + ( +> + cd "$test_count" && +> + git subtree split --prefix=subBDir --squash --rejoin -m "Sub B Split 1" +> + ) && +> + test_create_commit "$test_count" subADir/main-subA2 && +> + test_create_commit "$test_count" subBDir/main-subB2 && +> + ( +> + cd "$test_count" && +> + git subtree split --prefix=subADir --squash --rejoin -m "Sub A Split 2" +> + ) && +> + ( +> + cd "$test_count" && +> + test "$(git subtree split --prefix=subBDir --squash --rejoin -d -m "Sub B Split 1" 2>&1 | grep -w "\[1\]")" = "" +> + ) +> +' +> + +> test_expect_success 'split sub dir/ with --rejoin from scratch' ' +> subtree_test_create_repo "$test_count" && +> test_create_commit "$test_count" main1 && +> -- -The test accomplishes this by checking the output -of the split command to ensure the output from -the progress of 'process_split_commit' function -that represents the 'extracount' of commits -processed does not increment. +Checking to see if there is something else I need to do with this +to get it across the finish line, wasn't sure if something else +was needed since it's been dormant since my last push a few +weeks ago. -This was tested against the original functionality -to show the test failed, and then with this fix -to show the test passes. - -This illustrated that when using multiple subtrees, -A and B, when doing a split on subtree B, the -processing does not traverse the entire history -of subtree A which is unnecessary and would cause -the 'extracount' of processed commits to climb -based on the number of commits in the history of -subtree A. - -Signed-off-by: Zach FettersMoore <zach.fetters@apollographql•com> ---- - contrib/subtree/t/t7900-subtree.sh | 41 ++++++++++++++++++++++++++++++ - 1 file changed, 41 insertions(+) - -diff --git a/contrib/subtree/t/t7900-subtree.sh b/contrib/subtree/t/t7900-subtree.sh -index 49a21dd7c9c..57c12e9f924 100755 ---- a/contrib/subtree/t/t7900-subtree.sh -+++ b/contrib/subtree/t/t7900-subtree.sh -@@ -385,6 +385,47 @@ test_expect_success 'split sub dir/ with --rejoin' ' - ) - ' - -+test_expect_success 'split with multiple subtrees' ' -+ subtree_test_create_repo "$test_count" && -+ subtree_test_create_repo "$test_count/subA" && -+ subtree_test_create_repo "$test_count/subB" && -+ test_create_commit "$test_count" main1 && -+ test_create_commit "$test_count/subA" subA1 && -+ test_create_commit "$test_count/subA" subA2 && -+ test_create_commit "$test_count/subA" subA3 && -+ test_create_commit "$test_count/subB" subB1 && -+ ( -+ cd "$test_count" && -+ git fetch ./subA HEAD && -+ git subtree add --prefix=subADir FETCH_HEAD -+ ) && -+ ( -+ cd "$test_count" && -+ git fetch ./subB HEAD && -+ git subtree add --prefix=subBDir FETCH_HEAD -+ ) && -+ test_create_commit "$test_count" subADir/main-subA1 && -+ test_create_commit "$test_count" subBDir/main-subB1 && -+ ( -+ cd "$test_count" && -+ git subtree split --prefix=subADir --squash --rejoin -m "Sub A Split 1" -+ ) && -+ ( -+ cd "$test_count" && -+ git subtree split --prefix=subBDir --squash --rejoin -m "Sub B Split 1" -+ ) && -+ test_create_commit "$test_count" subADir/main-subA2 && -+ test_create_commit "$test_count" subBDir/main-subB2 && -+ ( -+ cd "$test_count" && -+ git subtree split --prefix=subADir --squash --rejoin -m "Sub A Split 2" -+ ) && -+ ( -+ cd "$test_count" && -+ test "$(git subtree split --prefix=subBDir --squash --rejoin -d -m "Sub B Split 1" 2>&1 | grep -w "\[1\]")" = "" -+ ) -+' -+ - test_expect_success 'split sub dir/ with --rejoin from scratch' ' - subtree_test_create_repo "$test_count" && - test_create_commit "$test_count" main1 && --- -gitgitgadget +Thanks diff --git a/a/content_digest b/N1/content_digest index 23a76e3..546631c 100644 --- a/a/content_digest +++ b/N1/content_digest @@ -1,94 +1,102 @@ "ref\0pull.1587.v2.git.1695399920.gitgitgadget@gmail•com\0" "ref\0pull.1587.v3.git.1696019580.gitgitgadget@gmail•com\0" - "From\0Zach FettersMoore via GitGitGadget <gitgitgadget@gmail•com>\0" + "From\0Zach FettersMoore <zach.fetters@apollographql•com>\0" "Subject\0[PATCH v3 3/3] subtree: adding test to validate fix\0" - "Date\0Fri, 29 Sep 2023 20:33:00 +0000\0" - "To\0git@vger•kernel.org\0" - "Cc\0Zach FettersMoore <zach.fetters@apollographql•com>" - " Zach FettersMoore <zach.fetters@apollographql•com>\0" + "Date\0Tue, 17 Oct 2023 16:02:39 -0400\0" + "To\0gitgitgadget@gmail•com" + " git@vger•kernel.org\0" + "Cc\0zach.fetters@apollographql•com\0" "\00:1\0" "b\0" - "From: Zach FettersMoore <zach.fetters@apollographql•com>\n" + "From: \"Zach FettersMoore via GitGitGadget\" <gitgitgadget@gmail•com>\n" "\n" - "Adding a test to validate that the proposed fix\n" - "solves the issue.\n" + "> From: Zach FettersMoore <zach.fetters@apollographql•com>\n" + "> \n" + "> Adding a test to validate that the proposed fix\n" + "> solves the issue.\n" + "> \n" + "> The test accomplishes this by checking the output\n" + "> of the split command to ensure the output from\n" + "> the progress of 'process_split_commit' function\n" + "> that represents the 'extracount' of commits\n" + "> processed does not increment.\n" + "> \n" + "> This was tested against the original functionality\n" + "> to show the test failed, and then with this fix\n" + "> to show the test passes.\n" + "> \n" + "> This illustrated that when using multiple subtrees,\n" + "> A and B, when doing a split on subtree B, the\n" + "> processing does not traverse the entire history\n" + "> of subtree A which is unnecessary and would cause\n" + "> the 'extracount' of processed commits to climb\n" + "> based on the number of commits in the history of\n" + "> subtree A.\n" + "> \n" + "> Signed-off-by: Zach FettersMoore <zach.fetters@apollographql•com>\n" + "> ---\n" + "> contrib/subtree/t/t7900-subtree.sh | 41 ++++++++++++++++++++++++++++++\n" + "> 1 file changed, 41 insertions(+)\n" + "> \n" + "> diff --git a/contrib/subtree/t/t7900-subtree.sh b/contrib/subtree/t/t7900-subtree.sh\n" + "> index 49a21dd7c9c..57c12e9f924 100755\n" + "> --- a/contrib/subtree/t/t7900-subtree.sh\n" + "> +++ b/contrib/subtree/t/t7900-subtree.sh\n" + "> @@ -385,6 +385,47 @@ test_expect_success 'split sub dir/ with --rejoin' '\n" + "> \t)\n" + "> '\n" + "> \n" + "> +test_expect_success 'split with multiple subtrees' '\n" + "> +\tsubtree_test_create_repo \"$test_count\" &&\n" + "> +\tsubtree_test_create_repo \"$test_count/subA\" &&\n" + "> +\tsubtree_test_create_repo \"$test_count/subB\" &&\n" + "> +\ttest_create_commit \"$test_count\" main1 &&\n" + "> +\ttest_create_commit \"$test_count/subA\" subA1 &&\n" + "> +\ttest_create_commit \"$test_count/subA\" subA2 &&\n" + "> +\ttest_create_commit \"$test_count/subA\" subA3 &&\n" + "> +\ttest_create_commit \"$test_count/subB\" subB1 &&\n" + "> +\t(\n" + "> +\t\tcd \"$test_count\" &&\n" + "> +\t\tgit fetch ./subA HEAD &&\n" + "> +\t\tgit subtree add --prefix=subADir FETCH_HEAD\n" + "> +\t) &&\n" + "> +\t(\n" + "> +\t\tcd \"$test_count\" &&\n" + "> +\t\tgit fetch ./subB HEAD &&\n" + "> +\t\tgit subtree add --prefix=subBDir FETCH_HEAD\n" + "> +\t) &&\n" + "> +\ttest_create_commit \"$test_count\" subADir/main-subA1 &&\n" + "> +\ttest_create_commit \"$test_count\" subBDir/main-subB1 &&\n" + "> +\t(\n" + "> +\t\tcd \"$test_count\" &&\n" + "> +\t\tgit subtree split --prefix=subADir --squash --rejoin -m \"Sub A Split 1\"\n" + "> +\t) &&\n" + "> +\t(\n" + "> +\t\tcd \"$test_count\" &&\n" + "> +\t\tgit subtree split --prefix=subBDir --squash --rejoin -m \"Sub B Split 1\"\n" + "> +\t) &&\n" + "> +\ttest_create_commit \"$test_count\" subADir/main-subA2 &&\n" + "> +\ttest_create_commit \"$test_count\" subBDir/main-subB2 &&\n" + "> +\t(\n" + "> +\t\tcd \"$test_count\" &&\n" + "> +\t\tgit subtree split --prefix=subADir --squash --rejoin -m \"Sub A Split 2\"\n" + "> +\t) &&\n" + "> +\t(\n" + "> +\t\tcd \"$test_count\" &&\n" + "> +\t\ttest \"$(git subtree split --prefix=subBDir --squash --rejoin -d -m \"Sub B Split 1\" 2>&1 | grep -w \"\\[1\\]\")\" = \"\"\n" + "> +\t)\n" + "> +'\n" + "> +\n" + "> test_expect_success 'split sub dir/ with --rejoin from scratch' '\n" + "> \tsubtree_test_create_repo \"$test_count\" &&\n" + "> \ttest_create_commit \"$test_count\" main1 &&\n" + "> --\n" "\n" - "The test accomplishes this by checking the output\n" - "of the split command to ensure the output from\n" - "the progress of 'process_split_commit' function\n" - "that represents the 'extracount' of commits\n" - "processed does not increment.\n" + "Checking to see if there is something else I need to do with this\n" + "to get it across the finish line, wasn't sure if something else\n" + "was needed since it's been dormant since my last push a few \n" + "weeks ago.\n" "\n" - "This was tested against the original functionality\n" - "to show the test failed, and then with this fix\n" - "to show the test passes.\n" - "\n" - "This illustrated that when using multiple subtrees,\n" - "A and B, when doing a split on subtree B, the\n" - "processing does not traverse the entire history\n" - "of subtree A which is unnecessary and would cause\n" - "the 'extracount' of processed commits to climb\n" - "based on the number of commits in the history of\n" - "subtree A.\n" - "\n" - "Signed-off-by: Zach FettersMoore <zach.fetters@apollographql•com>\n" - "---\n" - " contrib/subtree/t/t7900-subtree.sh | 41 ++++++++++++++++++++++++++++++\n" - " 1 file changed, 41 insertions(+)\n" - "\n" - "diff --git a/contrib/subtree/t/t7900-subtree.sh b/contrib/subtree/t/t7900-subtree.sh\n" - "index 49a21dd7c9c..57c12e9f924 100755\n" - "--- a/contrib/subtree/t/t7900-subtree.sh\n" - "+++ b/contrib/subtree/t/t7900-subtree.sh\n" - "@@ -385,6 +385,47 @@ test_expect_success 'split sub dir/ with --rejoin' '\n" - " \t)\n" - " '\n" - " \n" - "+test_expect_success 'split with multiple subtrees' '\n" - "+\tsubtree_test_create_repo \"$test_count\" &&\n" - "+\tsubtree_test_create_repo \"$test_count/subA\" &&\n" - "+\tsubtree_test_create_repo \"$test_count/subB\" &&\n" - "+\ttest_create_commit \"$test_count\" main1 &&\n" - "+\ttest_create_commit \"$test_count/subA\" subA1 &&\n" - "+\ttest_create_commit \"$test_count/subA\" subA2 &&\n" - "+\ttest_create_commit \"$test_count/subA\" subA3 &&\n" - "+\ttest_create_commit \"$test_count/subB\" subB1 &&\n" - "+\t(\n" - "+\t\tcd \"$test_count\" &&\n" - "+\t\tgit fetch ./subA HEAD &&\n" - "+\t\tgit subtree add --prefix=subADir FETCH_HEAD\n" - "+\t) &&\n" - "+\t(\n" - "+\t\tcd \"$test_count\" &&\n" - "+\t\tgit fetch ./subB HEAD &&\n" - "+\t\tgit subtree add --prefix=subBDir FETCH_HEAD\n" - "+\t) &&\n" - "+\ttest_create_commit \"$test_count\" subADir/main-subA1 &&\n" - "+\ttest_create_commit \"$test_count\" subBDir/main-subB1 &&\n" - "+\t(\n" - "+\t\tcd \"$test_count\" &&\n" - "+\t\tgit subtree split --prefix=subADir --squash --rejoin -m \"Sub A Split 1\"\n" - "+\t) &&\n" - "+\t(\n" - "+\t\tcd \"$test_count\" &&\n" - "+\t\tgit subtree split --prefix=subBDir --squash --rejoin -m \"Sub B Split 1\"\n" - "+\t) &&\n" - "+\ttest_create_commit \"$test_count\" subADir/main-subA2 &&\n" - "+\ttest_create_commit \"$test_count\" subBDir/main-subB2 &&\n" - "+\t(\n" - "+\t\tcd \"$test_count\" &&\n" - "+\t\tgit subtree split --prefix=subADir --squash --rejoin -m \"Sub A Split 2\"\n" - "+\t) &&\n" - "+\t(\n" - "+\t\tcd \"$test_count\" &&\n" - "+\t\ttest \"$(git subtree split --prefix=subBDir --squash --rejoin -d -m \"Sub B Split 1\" 2>&1 | grep -w \"\\[1\\]\")\" = \"\"\n" - "+\t)\n" - "+'\n" - "+\n" - " test_expect_success 'split sub dir/ with --rejoin from scratch' '\n" - " \tsubtree_test_create_repo \"$test_count\" &&\n" - " \ttest_create_commit \"$test_count\" main1 &&\n" - "-- \n" - gitgitgadget + Thanks -8f1b53450a582a5fbe2b2c0d9b4d0e9f934758f7f01e369f4d9237bf4a82c5b6 +b66dbb7573afc5f36d360857ab3c98a086493b5518145988f21334e8ba131ab8
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox