should git-subtree ignore submodules?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



"git-subtree add" fails to add the subtree into a repository with submodules, reporting that the worktree is not clean, while `git status` says that everything is clean (including submodules). I tracked the problem down to the command "git index HEAD" returning all submodules as having the M status:

$ git diff-index HEAD
:160000 160000 d3812c9318c4d0336897fd2d666be908fa1a7953 d3812c9318c4d0336897fd2d666be908fa1a7953 M ext/grpc
<snip more submodules>
$ git --version
git version 2.9.2.windows.1

I worked around the problem in my local copy of git-subtree shell script by adding "--ignore-submodules=all" to the two invocations of `git diff-index` in the ensure_clean() function (direct link <https://github.com/git/git/blob/next/contrib/subtree/git-subtree.sh#L586>).

I am wondering, is this a defect in git-subtree? To my understanding, the command should not care about submodules more than ensuring their worktree is not in the way of new prefix, and that's a separate check. So *even if* the submodule is modified, this should not be a show stopper for "git-subtree add". Or am I missing some subtleties?

 -kkm



[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]