From d851ffb91f8c25f51b284cd4e849757d656de0d1 Mon Sep 17 00:00:00 2001 From: Junio C Hamano Date: Wed, 2 Apr 2014 14:15:36 -0700 Subject: Revert "submodule: explicit local branch creation in module_clone" This reverts commit 23d25e48f5ead73c9ce233986f90791abec9f1e8, as it is broken for users who haven't opted into the new feature of checking out submodule.*.branch with update mode set to checkout. --- Documentation/git-submodule.txt | 34 ++++++++-------------------------- Documentation/gitmodules.txt | 4 ---- 2 files changed, 8 insertions(+), 30 deletions(-) (limited to 'Documentation') diff --git a/Documentation/git-submodule.txt b/Documentation/git-submodule.txt index a15d92d09b..89c4d3e394 100644 --- a/Documentation/git-submodule.txt +++ b/Documentation/git-submodule.txt @@ -15,7 +15,7 @@ SYNOPSIS 'git submodule' [--quiet] init [--] [...] 'git submodule' [--quiet] deinit [-f|--force] [--] ... 'git submodule' [--quiet] update [--init] [--remote] [-N|--no-fetch] - [-f|--force] [--checkout|--rebase|--merge] [--reference ] + [-f|--force] [--rebase|--merge] [--reference ] [--depth ] [--recursive] [--] [...] 'git submodule' [--quiet] summary [--cached|--files] [(-n|--summary-limit) ] [commit] [--] [...] @@ -155,31 +155,13 @@ it contains local modifications. update:: Update the registered submodules, i.e. clone missing submodules and - checkout the commit specified in the index of the containing - repository. The update mode defaults to `checkout`, but can be - configured with the `submodule..update` setting or the - `--rebase`, `--merge`, or `--checkout` options. -+ -For updates that clone missing submodules, checkout-mode updates will -create submodules with detached HEADs; all other modes will create -submodules with a local branch named after `submodule..branch`. -+ -For updates that do not clone missing submodules, the submodule's HEAD -is only touched when the remote reference does not match the -submodule's HEAD (for none-mode updates, the submodule is never -touched). The remote reference is usually the gitlinked commit from -the superproject's tree, but with `--remote` it is the upstream -subproject's `submodule..branch`. This remote reference is -integrated with the submodule's HEAD using the specified update mode. -For checkout-mode updates, that will result in a detached HEAD. For -rebase- and merge-mode updates, the commit referenced by the -submodule's HEAD may change, but the symbolic reference will remain -unchanged (i.e. checked-out branches will still be checked-out -branches, and detached HEADs will still be detached HEADs). If none -of the builtin modes fit your needs, set `submodule..update` to -`!command` to configure a custom integration command. `command` can -be any arbitrary shell command that takes a single argument, namely -the sha1 to update to. + checkout the commit specified in the index of the containing repository. + This will make the submodules HEAD be detached unless `--rebase` or + `--merge` is specified or the key `submodule.$name.update` is set to + `rebase`, `merge` or `none`. `none` can be overridden by specifying + `--checkout`. Setting the key `submodule.$name.update` to `!command` + will cause `command` to be run. `command` can be any arbitrary shell + command that takes a single argument, namely the sha1 to update to. + If the submodule is not yet initialized, and you just want to use the setting as stored in .gitmodules, you can automatically initialize the diff --git a/Documentation/gitmodules.txt b/Documentation/gitmodules.txt index f539e3f66a..347a9f76ee 100644 --- a/Documentation/gitmodules.txt +++ b/Documentation/gitmodules.txt @@ -55,10 +55,6 @@ submodule..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. -+ -This branch name is also used for the local branch created by -non-checkout cloning updates. See the `update` documentation in -linkgit:git-submodule[1] for details. submodule..fetchRecurseSubmodules:: This option can be used to control recursive fetching of this -- cgit v1.2.3