Merge branch 'jl/status-ignore-submodules'

* jl/status-ignore-submodules:
  Add the option "--ignore-submodules" to "git status"
  git submodule: ignore dirty submodules for summary and status

Conflicts:
	builtin/commit.c
	t/t7508-status.sh
	wt-status.c
	wt-status.h
This commit is contained in:
Junio C Hamano
2010-06-30 11:55:39 -07:00
9 changed files with 177 additions and 16 deletions

15
diff.c
View File

@ -3168,17 +3168,10 @@ int diff_opt_parse(struct diff_options *options, const char **av, int ac)
else if (!strcmp(arg, "--no-textconv"))
DIFF_OPT_CLR(options, ALLOW_TEXTCONV);
else if (!strcmp(arg, "--ignore-submodules"))
DIFF_OPT_SET(options, IGNORE_SUBMODULES);
else if (!prefixcmp(arg, "--ignore-submodules=")) {
if (!strcmp(arg + 20, "all"))
DIFF_OPT_SET(options, IGNORE_SUBMODULES);
else if (!strcmp(arg + 20, "untracked"))
DIFF_OPT_SET(options, IGNORE_UNTRACKED_IN_SUBMODULES);
else if (!strcmp(arg + 20, "dirty"))
DIFF_OPT_SET(options, IGNORE_DIRTY_SUBMODULES);
else
die("bad --ignore-submodules argument: %s", arg + 20);
} else if (!strcmp(arg, "--submodule"))
handle_ignore_submodules_arg(options, "all");
else if (!prefixcmp(arg, "--ignore-submodules="))
handle_ignore_submodules_arg(options, arg + 20);
else if (!strcmp(arg, "--submodule"))
DIFF_OPT_SET(options, SUBMODULE_LOG);
else if (!prefixcmp(arg, "--submodule=")) {
if (!strcmp(arg + 12, "log"))