]> git.ipfire.org Git - thirdparty/git.git/commit - git-submodule.sh
submodule: refuse to add repository with no commits
authorKyle Meyer <kyle@kyleam.com>
Tue, 9 Apr 2019 23:07:35 +0000 (19:07 -0400)
committerJunio C Hamano <gitster@pobox.com>
Wed, 10 Apr 2019 03:52:48 +0000 (12:52 +0900)
commite13811189bbd6b8672e3359f25c1e10f0c9b3c20
treee61568c6e9e0bdce7c3897599bae2a1e8513e923
parentaeb582a98374c094361cba1bd756dc6307432c42
submodule: refuse to add repository with no commits

When the path given to 'git submodule add' is an existing repository
that is not in the index, the repository is passed to 'git add'.  If
this repository doesn't have a commit checked out, we don't get a
useful result: there is no subproject OID to track, and any untracked
files in the sub-repository are added as blobs in the top-level
repository.

To avoid getting into this state, abort if the path is a repository
that doesn't have a commit checked out.  Note that this check must
come before the 'git add --dry-run' check because the next commit will
make 'git add' fail when given a repository that doesn't have a commit
checked out.

Signed-off-by: Kyle Meyer <kyle@kyleam.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
git-submodule.sh
t/t7400-submodule-basic.sh