aboutsummaryrefslogtreecommitdiff
path: root/Documentation
diff options
context:
space:
mode:
authorJens Lehmann <Jens.Lehmann@web.de>2010-11-11 00:55:41 +0100
committerJunio C Hamano <gitster@pobox.com>2010-11-12 15:06:03 -0800
commitc1a3c3640deb8bd6929026a55b18feb1dda74e77 (patch)
tree8dc29f8d815f7dff07895414f4cb5bd21857bb92 /Documentation
parentbe254a0ea99b441a6c514cb8b25cd72357383700 (diff)
downloadgit-c1a3c3640deb8bd6929026a55b18feb1dda74e77.tar.gz
git-c1a3c3640deb8bd6929026a55b18feb1dda74e77.tar.xz
Submodules: Add the "fetchRecurseSubmodules" config option
The new boolean "fetchRecurseSubmodules" config option controls the behavior for "git fetch" and "git pull". It specifies if these commands should recurse into submodules and fetch new commits there too and can be set separately for each submodule. In the .gitmodules file "submodule.<name>.fetchRecurseSubmodules" entries are read before looking for them in .git/config. Thus settings found in .git/config will override those from .gitmodules, thereby allowing the user to ignore settings given by the remote side while also letting upstream set reasonable defaults for those users who don't have special needs. This configuration can be overridden by the command line option "--[no-]recurse-submodules" of "git fetch" and "git pull". Signed-off-by: Jens Lehmann <Jens.Lehmann@web.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'Documentation')
-rw-r--r--Documentation/config.txt7
-rw-r--r--Documentation/fetch-options.txt2
-rw-r--r--Documentation/gitmodules.txt8
3 files changed, 16 insertions, 1 deletions
diff --git a/Documentation/config.txt b/Documentation/config.txt
index b10e36f7e..bb17432ea 100644
--- a/Documentation/config.txt
+++ b/Documentation/config.txt
@@ -1768,6 +1768,13 @@ submodule.<name>.update::
URL and other values found in the `.gitmodules` file. See
linkgit:git-submodule[1] and linkgit:gitmodules[5] for details.
+submodule.<name>.fetchRecurseSubmodules::
+ This option can be used to enable/disable recursive fetching of this
+ submodule. It can be overriden by using the --[no-]recurse-submodules
+ command line option to "git fetch" and "git pull".
+ This setting will override that from in the linkgit:gitmodules[5]
+ file.
+
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
diff --git a/Documentation/fetch-options.txt b/Documentation/fetch-options.txt
index 4cddfe8fa..99e72d912 100644
--- a/Documentation/fetch-options.txt
+++ b/Documentation/fetch-options.txt
@@ -62,7 +62,7 @@ endif::git-pull[]
--[no-]recurse-submodules::
This option controls if new commits of all populated submodules should
- be fetched too (see linkgit:git-config[1]).
+ be fetched too (see linkgit:git-config[1] and linkgit:gitmodules[5]).
ifndef::git-pull[]
--submodule-prefix=<path>::
diff --git a/Documentation/gitmodules.txt b/Documentation/gitmodules.txt
index bcffd95ad..6c93202e7 100644
--- a/Documentation/gitmodules.txt
+++ b/Documentation/gitmodules.txt
@@ -44,6 +44,14 @@ submodule.<name>.update::
This config option is overridden if 'git submodule update' is given
the '--merge' or '--rebase' options.
+submodule.<name>.fetchRecurseSubmodules::
+ This option can be used to enable/disable recursive fetching of this
+ submodule. 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
+ "--[no-]recurse-submodules" option to "git fetch" and "git pull"..
+
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