Documentation / submodule-config.txton commit config.txt: move mailmap.* to a separate file (4a9f0c5)
   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 or 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 submodules 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        Specifies if commands recurse into submodules by default. This
  62        applies to all commands that have a `--recurse-submodules` option,
  63        except `clone`.
  64        Defaults to false.
  65
  66submodule.fetchJobs::
  67        Specifies how many submodules are fetched/cloned at the same time.
  68        A positive integer allows up to that number of submodules fetched
  69        in parallel. A value of 0 will give some reasonable default.
  70        If unset, it defaults to 1.
  71
  72submodule.alternateLocation::
  73        Specifies how the submodules obtain alternates when submodules are
  74        cloned. Possible values are `no`, `superproject`.
  75        By default `no` is assumed, which doesn't add references. When the
  76        value is set to `superproject` the submodule to be cloned computes
  77        its alternates location relative to the superprojects alternate.
  78
  79submodule.alternateErrorStrategy::
  80        Specifies how to treat errors with the alternates for a submodule
  81        as computed via `submodule.alternateLocation`. Possible values are
  82        `ignore`, `info`, `die`. Default is `die`.