aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation/git-status.txt
diff options
context:
space:
mode:
authorJens Lehmann <Jens.Lehmann@web.de>2010-06-25 16:56:47 +0200
committerJunio C Hamano <gitster@pobox.com>2010-06-25 11:30:25 -0700
commit46a958b3daa1da336683ec82d7f321d0f51b39c8 (patch)
treecc5b3a42bdd09d3f86e6f0b5f34d1f143729b35c /Documentation/git-status.txt
parent18076502cb282482f3cd75d766e1478cc3fccc29 (diff)
downloadgit-46a958b3daa1da336683ec82d7f321d0f51b39c8.tar.gz
Add the option "--ignore-submodules" to "git status"
In some use cases it is not desirable that "git status" considers submodules that only contain untracked content as dirty. This may happen e.g. when the submodule is not under the developers control and not all build generated files have been added to .gitignore by the upstream developers. Using the "untracked" parameter for the "--ignore-submodules" option disables checking for untracked content and lets git diff report them as changed only when they have new commits or modified content. Sometimes it is not wanted to have submodules show up as changed when they just contain changes to their work tree (this was the behavior before 1.7.0). An example for that are scripts which just want to check for submodule commits while ignoring any changes to the work tree. Also users having large submodules known not to change might want to use this option, as the - sometimes substantial - time it takes to scan the submodule work tree(s) is saved when using the "dirty" parameter. And if you want to ignore any changes to submodules, you can now do that by using this option without parameters or with "all" (when the config option status.submodulesummary is set, using "all" will also suppress the output of the submodule summary). A new function handle_ignore_submodules_arg() is introduced to parse this option new to "git status" in a single location, as "git diff" already knew it. Signed-off-by: Jens Lehmann <Jens.Lehmann@web.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'Documentation/git-status.txt')
-rw-r--r--Documentation/git-status.txt11
1 files changed, 11 insertions, 0 deletions
diff --git a/Documentation/git-status.txt b/Documentation/git-status.txt
index 2d4bbfcaf4..a617ce746c 100644
--- a/Documentation/git-status.txt
+++ b/Documentation/git-status.txt
@@ -49,6 +49,17 @@ See linkgit:git-config[1] for configuration variable
used to change the default for when the option is not
specified.
+--ignore-submodules[=<when>]::
+ Ignore changes to submodules when looking for changes. <when> can be
+ either "untracked", "dirty" or "all", which is the default. When
+ "untracked" is used submodules are not considered dirty when they only
+ contain untracked content (but they are still scanned for modified
+ content). Using "dirty" ignores all changes to the work tree of submodules,
+ only changes to the commits stored in the superproject are shown (this was
+ the behavior before 1.7.0). Using "all" hides all changes to submodules
+ (and suppresses the output of submodule summaries when the config option
+ `status.submodulesummary` is set).
+
-z::
Terminate entries with NUL, instead of LF. This implies
the `--porcelain` output format if no other format is given.