Git fork
at reftables-rust 108 lines 5.2 kB view raw
1submodule.<name>.url:: 2 The URL for a submodule. This variable is copied from the .gitmodules 3 file to the git config via 'git submodule init'. The user can change 4 the configured URL before obtaining the submodule via 'git submodule 5 update'. If neither submodule.<name>.active nor submodule.active are 6 set, the presence of this variable is used as a fallback to indicate 7 whether the submodule is of interest to git commands. 8 See linkgit:git-submodule[1] and linkgit:gitmodules[5] for details. 9 10submodule.<name>.update:: 11 The method by which a submodule is updated by 'git submodule update', 12 which is the only affected command, others such as 13 'git checkout --recurse-submodules' are unaffected. It exists for 14 historical reasons, when 'git submodule' was the only command to 15 interact with submodules; settings like `submodule.active` 16 and `pull.rebase` are more specific. It is populated by 17 `git submodule init` from the linkgit:gitmodules[5] file. 18 See description of 'update' command in linkgit:git-submodule[1]. 19 20submodule.<name>.branch:: 21 The remote branch name for a submodule, used by `git submodule 22 update --remote`. Set this option to override the value found in 23 the `.gitmodules` file. See linkgit:git-submodule[1] and 24 linkgit:gitmodules[5] for details. 25 26submodule.<name>.fetchRecurseSubmodules:: 27 This option can be used to control recursive fetching of this 28 submodule. It can be overridden by using the --[no-]recurse-submodules 29 command-line option to "git fetch" and "git pull". 30 This setting will override that from in the linkgit:gitmodules[5] 31 file. 32 33submodule.<name>.ignore:: 34 Defines under what circumstances "git status" and the diff family show 35 a submodule as modified. When set to "all", it will never be considered 36 modified (but it will nonetheless show up in the output of status and 37 commit when it has been staged), "dirty" will ignore all changes 38 to the submodule's work tree and 39 takes only differences between the HEAD of the submodule and the commit 40 recorded in the superproject into account. "untracked" will additionally 41 let submodules with modified tracked files in their work tree show up. 42 Using "none" (the default when this option is not set) also shows 43 submodules that have untracked files in their work tree as changed. 44 This setting overrides any setting made in .gitmodules for this submodule, 45 both settings can be overridden on the command line by using the 46 "--ignore-submodules" option. The 'git submodule' commands are not 47 affected by this setting. 48 49submodule.<name>.active:: 50 Boolean value indicating if the submodule is of interest to git 51 commands. This config option takes precedence over the 52 submodule.active config option. See linkgit:gitsubmodules[7] for 53 details. 54 55submodule.active:: 56 A repeated field which contains a pathspec used to match against a 57 submodule's path to determine if the submodule is of interest to git 58 commands. See linkgit:gitsubmodules[7] for details. 59 60submodule.recurse:: 61 A boolean indicating if commands should enable the `--recurse-submodules` 62 option by default. Defaults to false. 63+ 64When set to true, it can be deactivated via the 65`--no-recurse-submodules` option. Note that some Git commands 66lacking this option may call some of the above commands affected by 67`submodule.recurse`; for instance `git remote update` will call 68`git fetch` but does not have a `--no-recurse-submodules` option. 69For these commands a workaround is to temporarily change the 70configuration value by using `git -c submodule.recurse=0`. 71+ 72The following list shows the commands that accept 73`--recurse-submodules` and whether they are supported by this 74setting. 75 76* `checkout`, `fetch`, `grep`, `pull`, `push`, `read-tree`, 77`reset`, `restore` and `switch` are always supported. 78* `clone` and `ls-files` are not supported. 79* `branch` is supported only if `submodule.propagateBranches` is 80enabled 81 82submodule.propagateBranches:: 83 [EXPERIMENTAL] A boolean that enables branching support when 84 using `--recurse-submodules` or `submodule.recurse=true`. 85 Enabling this will allow certain commands to accept 86 `--recurse-submodules` and certain commands that already accept 87 `--recurse-submodules` will now consider branches. 88 Defaults to false. 89 90submodule.fetchJobs:: 91 Specifies how many submodules are fetched/cloned at the same time. 92 A positive integer allows up to that number of submodules fetched 93 in parallel. A value of 0 will give some reasonable default. 94 If unset, it defaults to 1. 95 96submodule.alternateLocation:: 97 Specifies how the submodules obtain alternates when submodules are 98 cloned. Possible values are `no`, `superproject`. 99 By default `no` is assumed, which doesn't add references. When the 100 value is set to `superproject` the submodule to be cloned computes 101 its alternates location relative to the superprojects alternate. 102 103submodule.alternateErrorStrategy:: 104 Specifies how to treat errors with the alternates for a submodule 105 as computed via `submodule.alternateLocation`. Possible values are 106 `ignore`, `info`, `die`. Default is `die`. Note that if set to `ignore` 107 or `info`, and if there is an error with the computed alternate, the 108 clone proceeds as if no alternate was specified.