Code

Submodules: Use "ignore" settings from .gitmodules too for diff and status
[git.git] / Documentation / gitmodules.txt
index 5daf750d1942f3b97844b4ef378daf9346cb46d4..8ae107da250ff01b17b5215a474c781a0f0ae57a 100644 (file)
@@ -29,6 +29,9 @@ submodule.<name>.path::
 
 submodule.<name>.url::
        Defines an url from where the submodule repository can be cloned.
+       This may be either an absolute URL ready to be passed to
+       linkgit:git-clone[1] or (if it begins with ./ or ../) a location
+       relative to the superproject's origin repository.
 
 submodule.<name>.update::
        Defines what to do when the submodule is updated by the superproject.
@@ -41,6 +44,21 @@ submodule.<name>.update::
        This config option is overridden if 'git submodule update' is given
        the '--merge' or '--rebase' options.
 
+submodule.<name>.ignore::
+       Defines under what circumstances "git status" and the diff family show
+       a submodule as modified. When set to "all", it will never be considered
+       modified, "dirty" will ignore all changes to the submodules work tree and
+       takes only differences between the HEAD of the submodule and the commit
+       recorded in the superproject into account. "untracked" will additionally
+       let submodules with modified tracked files in their work tree show up.
+       Using "none" (the default when this option is not set) also shows
+       submodules that have untracked files in their work tree as changed.
+       If this option is also present in the submodules entry in .git/config of
+       the superproject, the setting there will override the one found in
+       .gitmodules.
+       Both settings can be overriden on the command line by using the
+       "--ignore-submodule" option.
+
 
 EXAMPLES
 --------