Merge branch 'wk/submodule-update-remote'
The beginning of 'integrate with the tip of the remote branch, not the commit recorded in the superproject gitlink' support. * wk/submodule-update-remote: submodule add: If --branch is given, record it in .gitmodules submodule update: add --remote for submodule's upstream changes submodule: add get_submodule_config helper funtion
This commit is contained in:
@ -2007,6 +2007,12 @@ 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>.branch::
|
||||
The remote branch name for a submodule, used by `git submodule
|
||||
update --remote`. Set this option to override the value 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 control recursive fetching of this
|
||||
submodule. It can be overridden by using the --[no-]recurse-submodules
|
||||
|
@ -13,7 +13,7 @@ SYNOPSIS
|
||||
[--reference <repository>] [--] <repository> [<path>]
|
||||
'git submodule' [--quiet] status [--cached] [--recursive] [--] [<path>...]
|
||||
'git submodule' [--quiet] init [--] [<path>...]
|
||||
'git submodule' [--quiet] update [--init] [-N|--no-fetch] [--rebase]
|
||||
'git submodule' [--quiet] update [--init] [--remote] [-N|--no-fetch] [--rebase]
|
||||
[--reference <repository>] [--merge] [--recursive] [--] [<path>...]
|
||||
'git submodule' [--quiet] summary [--cached|--files] [(-n|--summary-limit) <n>]
|
||||
[commit] [--] [<path>...]
|
||||
@ -208,6 +208,8 @@ OPTIONS
|
||||
-b::
|
||||
--branch::
|
||||
Branch of repository to add as submodule.
|
||||
The name of the branch is recorded as `submodule.<path>.branch` in
|
||||
`.gitmodules` for `update --remote`.
|
||||
|
||||
-f::
|
||||
--force::
|
||||
@ -236,6 +238,27 @@ OPTIONS
|
||||
(the default). This limit only applies to modified submodules. The
|
||||
size is always limited to 1 for added/deleted/typechanged submodules.
|
||||
|
||||
--remote::
|
||||
This option is only valid for the update command. Instead of using
|
||||
the superproject's recorded SHA-1 to update the submodule, use the
|
||||
status of the submodule's remote tracking branch. The remote used
|
||||
is branch's remote (`branch.<name>.remote`), defaulting to `origin`.
|
||||
The remote branch used defaults to `master`, but the branch name may
|
||||
be overridden by setting the `submodule.<name>.branch` option in
|
||||
either `.gitmodules` or `.git/config` (with `.git/config` taking
|
||||
precedence).
|
||||
+
|
||||
This works for any of the supported update procedures (`--checkout`,
|
||||
`--rebase`, etc.). The only change is the source of the target SHA-1.
|
||||
For example, `submodule update --remote --merge` will merge upstream
|
||||
submodule changes into the submodules, while `submodule update
|
||||
--merge` will merge superproject gitlink changes into the submodules.
|
||||
+
|
||||
In order to ensure a current tracking branch state, `update --remote`
|
||||
fetches the submodule's remote repository before calculating the
|
||||
SHA-1. If you don't want to fetch, you should use `submodule update
|
||||
--remote --no-fetch`.
|
||||
|
||||
-N::
|
||||
--no-fetch::
|
||||
This option is only valid for the update command.
|
||||
|
@ -49,6 +49,11 @@ submodule.<name>.update::
|
||||
This config option is overridden if 'git submodule update' is given
|
||||
the '--merge', '--rebase' or '--checkout' options.
|
||||
|
||||
submodule.<name>.branch::
|
||||
A remote branch name for tracking updates in the upstream submodule.
|
||||
If the option is not specified, it defaults to 'master'. See the
|
||||
`--remote` documentation in linkgit:git-submodule[1] for details.
|
||||
|
||||
submodule.<name>.fetchRecurseSubmodules::
|
||||
This option can be used to control recursive fetching of this
|
||||
submodule. If this option is also present in the submodules entry in
|
||||
|
Reference in New Issue
Block a user