doc: document --recurse-submodules for reset and restore

Also unify the formulation about --no-recurse-submodules for checkout
and switch, which we reuse for restore.

And correct the formulation about submodules' HEAD in read-tree, which
we reuse in reset.

Signed-off-by: Damien Robert <damien.olivier.robert+git@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Damien Robert 2020-04-06 15:57:06 +02:00 committed by Junio C Hamano
parent dd0cb7dffa
commit b3cec57338
5 changed files with 20 additions and 3 deletions

View File

@ -296,7 +296,7 @@ Note that this option uses the no overlay mode by default (see also
submodules according to the commit recorded in the superproject. If
local modifications in a submodule would be overwritten the checkout
will fail unless `-f` is used. If nothing (or `--no-recurse-submodules`)
is used, the work trees of submodules will not be updated.
is used, submodules working trees will not be updated.
Just like linkgit:git-submodule[1], this will detach `HEAD` of the
submodule.

View File

@ -118,7 +118,7 @@ OPTIONS
--[no-]recurse-submodules::
Using --recurse-submodules will update the content of all initialized
submodules according to the commit recorded in the superproject by
calling read-tree recursively, also setting the submodules HEAD to be
calling read-tree recursively, also setting the submodules' HEAD to be
detached at that commit.
--no-sparse-checkout::

View File

@ -87,6 +87,12 @@ but carries forward unmerged index entries.
different between `<commit>` and `HEAD`.
If a file that is different between `<commit>` and `HEAD` has local
changes, reset is aborted.
--[no-]recurse-submodules::
When the working tree is updated, using --recurse-submodules will
also recursively reset the working tree of all active submodules
according to the commit recorded in the superproject, also setting
the submodules' HEAD to be detached at that commit.
--
See "Reset, restore and revert" in linkgit:git[1] for the differences

View File

@ -107,6 +107,17 @@ in linkgit:git-checkout[1] for details.
patterns and unconditionally restores any files in
`<pathspec>`.
--recurse-submodules::
--no-recurse-submodules::
If `<pathspec>` names an active submodule and the restore location
includes the working tree, the submodule will only be updated if
this option is given, in which case its working tree will be
restored to the commit recorded in the superproject, and any local
modifications overwritten. If nothing (or
`--no-recurse-submodules`) is used, submodules working trees will
not be updated. Just like linkgit:git-checkout[1], this will detach
`HEAD` of the submodule.
--overlay::
--no-overlay::
In overlay mode, the command never removes files when

View File

@ -183,7 +183,7 @@ name, the guessing is aborted. You can explicitly give a name with
Using `--recurse-submodules` will update the content of all
initialized submodules according to the commit recorded in the
superproject. If nothing (or `--no-recurse-submodules`) is
used, the work trees of submodules will not be updated. Just
used, submodules working trees will not be updated. Just
like linkgit:git-submodule[1], this will detach `HEAD` of the
submodules.