* [PATCH] gitsubmodules: add '--recurse-submodules' for 'ls-files'
@ 2020-10-04 1:17 Philippe Blain via GitGitGadget
2020-10-04 19:55 ` Junio C Hamano
0 siblings, 1 reply; 2+ messages in thread
From: Philippe Blain via GitGitGadget @ 2020-10-04 1:17 UTC (permalink / raw)
To: git; +Cc: Philippe Blain, Philippe Blain
From: Philippe Blain <levraiphilippeblain@gmail.com>
`git ls-files` was never taught to respect the `submodule.recurse`
configuration variable, and it seems it is too late now to change that
[1], but still the command is mentioned in 'gitsubmodules(7)' as if it
does respect that config.
Adjust the call in 'gitsubmodules(7)' by adding the
'--recurse-submodules' flag.
While at it, uniformize the capitalization in that file, and use
backticks instead of quotes for Git commands and configuration
variables.
[1] https://lore.kernel.org/git/pull.732.git.1599707259907.gitgitgadget@gmail.com/T/#u
Signed-off-by: Philippe Blain <levraiphilippeblain@gmail.com>
---
gitsubmodules: add '--recurse-submodules' for 'ls-files'
Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-git-861%2Fphil-blain%2Fgitsubmodules-ls-files-v1
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-git-861/phil-blain/gitsubmodules-ls-files-v1
Pull-Request: https://github.com/git/git/pull/861
Documentation/gitsubmodules.txt | 23 +++++++++++++----------
1 file changed, 13 insertions(+), 10 deletions(-)
diff --git a/Documentation/gitsubmodules.txt b/Documentation/gitsubmodules.txt
index f9f4e65c9e..891c8da4fd 100644
--- a/Documentation/gitsubmodules.txt
+++ b/Documentation/gitsubmodules.txt
@@ -225,10 +225,10 @@ presence of the .url field.
Workflow for a third party library
----------------------------------
- # add a submodule
+ # Add a submodule
git submodule add <url> <path>
- # occasionally update the submodule to a new version:
+ # Occasionally update the submodule to a new version:
git -C <path> checkout <new version>
git add <path>
git commit -m "update submodule to new version"
@@ -246,20 +246,23 @@ Workflow for an artificially split repo
# regular commands recurse into submodules by default
git config --global submodule.recurse true
- # Unlike the other commands below clone still needs
+ # Unlike most other commands below, clone still needs
# its own recurse flag:
git clone --recurse <URL> <directory>
cd <directory>
# Get to know the code:
git grep foo
- git ls-files
+ git ls-files --recurse-submodules
+
+[NOTE]
+`git ls-files` also requires its own `--recurse-submodules` flag.
# Get new code
git fetch
git pull --rebase
- # change worktree
+ # Change worktree
git checkout
git reset
@@ -267,12 +270,12 @@ Implementation details
----------------------
When cloning or pulling a repository containing submodules the submodules
-will not be checked out by default; You can instruct 'clone' to recurse
-into submodules. The 'init' and 'update' subcommands of 'git submodule'
+will not be checked out by default; you can instruct `clone` to recurse
+into submodules. The `init` and `update` subcommands of `git submodule`
will maintain submodules checked out and at an appropriate revision in
-your working tree. Alternatively you can set 'submodule.recurse' to have
-'checkout' recursing into submodules (note that 'submodule.recurse' also
-affects other git commands, see linkgit:git-config[1] for a complete list).
+your working tree. Alternatively you can set `submodule.recurse` to have
+`checkout` recursing into submodules (note that `submodule.recurse` also
+affects other Git commands, see linkgit:git-config[1] for a complete list).
SEE ALSO
base-commit: 306ee63a703ad67c54ba1209dc11dd9ea500dc1f
--
gitgitgadget
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH] gitsubmodules: add '--recurse-submodules' for 'ls-files'
2020-10-04 1:17 [PATCH] gitsubmodules: add '--recurse-submodules' for 'ls-files' Philippe Blain via GitGitGadget
@ 2020-10-04 19:55 ` Junio C Hamano
0 siblings, 0 replies; 2+ messages in thread
From: Junio C Hamano @ 2020-10-04 19:55 UTC (permalink / raw)
To: Philippe Blain via GitGitGadget; +Cc: git, Philippe Blain
"Philippe Blain via GitGitGadget" <gitgitgadget@gmail.com> writes:
> @@ -246,20 +246,23 @@ Workflow for an artificially split repo
> # regular commands recurse into submodules by default
> git config --global submodule.recurse true
>
> - # Unlike the other commands below clone still needs
> + # Unlike most other commands below, clone still needs
> # its own recurse flag:
> git clone --recurse <URL> <directory>
> cd <directory>
>
> # Get to know the code:
> git grep foo
> - git ls-files
> + git ls-files --recurse-submodules
> +
> +[NOTE]
> +`git ls-files` also requires its own `--recurse-submodules` flag.
Makes sense. Thanks, will queue.
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2020-10-04 19:55 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-10-04 1:17 [PATCH] gitsubmodules: add '--recurse-submodules' for 'ls-files' Philippe Blain via GitGitGadget
2020-10-04 19:55 ` Junio C Hamano
Code repositories for project(s) associated with this public inbox
https://80x24.org/mirrors/git.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).