зеркало из https://github.com/microsoft/git.git
submodule add: If --branch is given, record it in .gitmodules
This allows you to easily record a submodule.<name>.branch option in .gitmodules when you add a new submodule. With this patch, $ git submodule add -b <branch> <repository> [<path>] $ git config -f .gitmodules submodule.<path>.branch <branch> reduces to $ git submodule add -b <branch> <repository> [<path>] This means that future calls to $ git submodule update --remote ... will get updates from the same branch that you used to initialize the submodule, which is usually what you want. Signed-off-by: W. Trevor King <wking@tremily.us> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Родитель
06b1abb5bd
Коммит
b928922727
|
@ -208,6 +208,8 @@ OPTIONS
|
||||||
-b::
|
-b::
|
||||||
--branch::
|
--branch::
|
||||||
Branch of repository to add as submodule.
|
Branch of repository to add as submodule.
|
||||||
|
The name of the branch is recorded as `submodule.<path>.branch` in
|
||||||
|
`.gitmodules` for `update --remote`.
|
||||||
|
|
||||||
-f::
|
-f::
|
||||||
--force::
|
--force::
|
||||||
|
|
|
@ -417,6 +417,10 @@ Use -f if you really want to add it." >&2
|
||||||
|
|
||||||
git config -f .gitmodules submodule."$sm_name".path "$sm_path" &&
|
git config -f .gitmodules submodule."$sm_name".path "$sm_path" &&
|
||||||
git config -f .gitmodules submodule."$sm_name".url "$repo" &&
|
git config -f .gitmodules submodule."$sm_name".url "$repo" &&
|
||||||
|
if test -n "$branch"
|
||||||
|
then
|
||||||
|
git config -f .gitmodules submodule."$sm_name".branch "$branch"
|
||||||
|
fi &&
|
||||||
git add --force .gitmodules ||
|
git add --force .gitmodules ||
|
||||||
die "$(eval_gettext "Failed to register submodule '\$sm_path'")"
|
die "$(eval_gettext "Failed to register submodule '\$sm_path'")"
|
||||||
}
|
}
|
||||||
|
|
|
@ -133,6 +133,7 @@ test_expect_success 'submodule add --branch' '
|
||||||
(
|
(
|
||||||
cd addtest &&
|
cd addtest &&
|
||||||
git submodule add -b initial "$submodurl" submod-branch &&
|
git submodule add -b initial "$submodurl" submod-branch &&
|
||||||
|
test "initial" = "$(git config -f .gitmodules submodule.submod-branch.branch)" &&
|
||||||
git submodule init
|
git submodule init
|
||||||
) &&
|
) &&
|
||||||
|
|
||||||
|
|
Загрузка…
Ссылка в новой задаче