]> git.ipfire.org Git - thirdparty/git.git/commit - merge-recursive.c
merge-recursive: handle addition of submodule on our side of history
authorElijah Newren <newren@gmail.com>
Tue, 14 Nov 2017 17:31:24 +0000 (09:31 -0800)
committerJunio C Hamano <gitster@pobox.com>
Wed, 15 Nov 2017 03:42:34 +0000 (12:42 +0900)
commitc641ca67072946f95f87e7b21f13f3d4e73701e3
treef8005b79d1dd6cb8e7359a08ae83bfca83c8654c
parent89c4ee4e74269635e69c84800ece0f8b754636f6
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 <newren@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
merge-recursive.c
t/t3512-cherry-pick-submodule.sh