diff --git a/Documentation/git-submodule.txt b/Documentation/git-submodule.txt index 2de7bf0900..b4683bba1b 100644 --- a/Documentation/git-submodule.txt +++ b/Documentation/git-submodule.txt @@ -112,7 +112,6 @@ status:: initialized, `+` if the currently checked out submodule commit does not match the SHA-1 found in the index of the containing repository and `U` if the submodule has merge conflicts. - This command is the default command for 'git submodule'. + If `--recursive` is specified, this command will recurse into nested submodules, and show their status as well. diff --git a/git-submodule.sh b/git-submodule.sh index 3e2045e52d..ab6b1107b6 100755 --- a/git-submodule.sh +++ b/git-submodule.sh @@ -1107,7 +1107,15 @@ do done # No command word defaults to "status" -test -n "$command" || command=status +if test -z "$command" +then + if test $# = 0 + then + command=status + else + usage + fi +fi # "-b branch" is accepted only by "add" if test -n "$branch" && test "$command" != add diff --git a/t/t7400-submodule-basic.sh b/t/t7400-submodule-basic.sh index 56a81cd748..5397037491 100755 --- a/t/t7400-submodule-basic.sh +++ b/t/t7400-submodule-basic.sh @@ -438,8 +438,8 @@ test_expect_success 'moving to a commit without submodule does not leave empty d git checkout second ' -test_expect_success 'submodule warns' ' - test_failure_with_unknown_submodule +test_expect_success 'submodule fails' ' + test_must_fail git submodule no-such-subcommand ' test_expect_success 'add submodules without specifying an explicit path' '