Re: [PATCH] git pull: Remove option handling done by fetch
- From
Jens Lehmann <jens.lehmann@web.de>
- Date
- Feb 6, 2011, 22:57 UTC
- Message-ID
- <4D4F273C.8030003@web.de>
- In-Reply-To
- <20110206220939.GC17210@elie>
Am 06.02.2011 23:09, schrieb Jonathan Nieder:
Show 15 quoted lines
> Jens Lehmann wrote: >> Am 06.02.2011 21:45, schrieb Junio C Hamano: >>> Jens Lehmann <Jens.Lehmann@web.de> writes: > >>>> Yes, but isn't that exactly what the pull man-page says? Quote: >>>> "Options meant for git pull itself and the underlying git merge >>>> must be given before the options meant for git fetch." >>> >>> Yes, it says that, and I think that was a weasely way to say "the command >>> line parser in git-pull is broken". > [...] >> (CCed Jonathan, as he is the author of the lines I quoted) > > They're from Junio. :) See v1.5.4.5~26 (git-pull documentation: warn > about the option order, 2008-03-10).
And I thought I could trust "git blame -M -C" ... ;-)
Show 8 quoted lines
> I also agree that (1) it would be very nice to find a way to fix this > and (2) until then, it seems best as a general principle not to > regress in those odd cases where we sort of fixed it. > > In other words, if we were adding --recurse-submodules today, I'd > agree that it should be treated like other fetch options, but we > already added the option and some people/scripts might be used to > the added flexibility, no?
Ok, even though that option was added only two months ago, somebody could already use it. So that leaves option two:
1) Drop the patch I proposed
2) Document "--[no-]recurse-submodules" as " as "git pull" options
(And then I can later pass the same option to "git merge", which is much better than the solutions I came up with ;-)
Maybe something like this?
-------------8<-------------- Subject: [PATCH] pull: Document the "--[no-]recurse-submodules" options
In commits be254a0ea9 and 7dce19d374 the handling of the new fetch options "--[no-]recurse-submodules" had been added to git-pull.sh. But they were not documented as the pull options they now are, so let's fix that.
Signed-off-by: Jens Lehmann <Jens.Lehmann@web.de> --- Documentation/fetch-options.txt | 2 +- Documentation/git-pull.txt | 4 ++++ 2 files changed, 5 insertions(+), 1 deletions(-)
diff --git a/Documentation/fetch-options.txt b/Documentation/fetch-options.txt index 695696d..ab0dbfc 100644 --- a/Documentation/fetch-options.txt +++ b/Documentation/fetch-options.txt @@ -64,11 +64,11 @@ ifndef::git-pull[] downloaded. The default behavior for a remote may be specified with the remote.<name>.tagopt setting. See linkgit:git-config[1]. -endif::git-pull[] --[no-]recurse-submodules:: This option controls if new commits of all populated submodules should be fetched too (see linkgit:git-config[1] and linkgit:gitmodules[5]). +endif::git-pull[] ifndef::git-pull[] --submodule-prefix=<path>:: diff --git a/Documentation/git-pull.txt b/Documentation/git-pull.txt index 3046691..7d0f601 100644 --- a/Documentation/git-pull.txt +++ b/Documentation/git-pull.txt @@ -84,6 +84,10 @@ must be given before the options meant for 'git fetch'. --verbose:: Pass --verbose to git-fetch and git-merge. +--[no-]recurse-submodules:: + This option controls if new commits of all populated submodules should + be fetched too (see linkgit:git-config[1] and linkgit:gitmodules[5]). + Options related to merging ~~~~~~~~~~~~~~~~~~~~~~~~~~
-- 1.7.4.31.g5ae186.dirty