From c641ca67072946f95f87e7b21f13f3d4e73701e3 Mon Sep 17 00:00:00 2001 From: Elijah Newren Date: Tue, 14 Nov 2017 09:31:24 -0800 Subject: merge-recursive: handle addition of submodule on our side of history The code for a newly added path assumed that the path was a normal file, and thus checked for there being a directory still being in the way of the file. Note that since unpack_trees() does path-in-the-way checks already, the only way for there to be a directory in the way at this point in the code, is if there is some kind of D/F conflict in the merge. For a submodule addition on HEAD's side of history, the submodule would have already been present. This means that we do expect there to be a directory present but should not consider it to be "in the way"; instead, it's the expected submodule. So, when there's a submodule addition from HEAD's side, don't bother checking the working copy for a directory in the way. Signed-off-by: Elijah Newren Signed-off-by: Junio C Hamano --- t/t3512-cherry-pick-submodule.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 't') diff --git a/t/t3512-cherry-pick-submodule.sh b/t/t3512-cherry-pick-submodule.sh index 1b1e31100f..ce48c4fcca 100755 --- a/t/t3512-cherry-pick-submodule.sh +++ b/t/t3512-cherry-pick-submodule.sh @@ -10,7 +10,7 @@ KNOWN_FAILURE_NOFF_MERGE_DOESNT_CREATE_EMPTY_SUBMODULE_DIR=1 KNOWN_FAILURE_NOFF_MERGE_ATTEMPTS_TO_MERGE_REMOVED_SUBMODULE_FILES=1 test_submodule_switch "git cherry-pick" -test_expect_failure 'unrelated submodule/file conflict is ignored' ' +test_expect_success 'unrelated submodule/file conflict is ignored' ' test_create_repo sub && touch sub/file && -- cgit v1.2.1