From: Phillip Wood Date: Mon, 09 Sep 2024 09:13:14 GMT Subject: Re: Re*: What's cooking draft as of 2024-09-06 late night Message-ID: <72635041-576e-42d5-9e12-13e9572b2cf7@gmail.com> In-Reply-To: Hi Junio On 07/09/2024 17:42, Junio C Hamano wrote: > --- >8 --- > Subject: doc: remote.*.skip{DefaultUpdate,FetchAll} stops prefetch > > Back when 7cc91a2f (Add the configuration option skipFetchAll, > 2009-11-09) added for the sole purpose of adding skipFetchAll as a > synonym to skipDefaultUpdate, there was no explanation about the > reason why it was needed., but these two configuration variables > mean exactly the same thing. > > Also, when we taught the "prefetch" task to "git maintenance" later, > we did make it pay attention to the setting, but we forgot to > document it. > > Document these variables as synonyms that collectively implements > the last-one-wins semantics, and also clarify that the prefetch task > is also controlled by this variable. > > Signed-off-by: Junio C Hamano > --- > * Note that "skipped by default" in the original has been rewritten > to "skipped" (unconditional), and this is deliberate. When there > is no conditionality and the behaviour is the only available one, > it is *not* "by default". This all sounds sensible, the patch looks good to me Best Wishes Phillip > Documentation/config/remote.txt | 13 +++++++------ > Documentation/git-maintenance.txt | 3 +++ > 2 files changed, 10 insertions(+), 6 deletions(-) > > diff --git c/Documentation/config/remote.txt w/Documentation/config/remote.txt > index 8efc53e836..36e771556c 100644 > --- c/Documentation/config/remote.txt > +++ w/Documentation/config/remote.txt > @@ -42,14 +42,15 @@ remote..mirror:: > as if the `--mirror` option was given on the command line. > > remote..skipDefaultUpdate:: > - If true, this remote will be skipped by default when updating > - using linkgit:git-fetch[1] or the `update` subcommand of > - linkgit:git-remote[1]. > + A deprecated synonym to `remote..skipFetchAll` (if > + both are set in the configuration files with different > + values, the value of the last occurrence will be used). > > remote..skipFetchAll:: > - If true, this remote will be skipped by default when updating > - using linkgit:git-fetch[1] or the `update` subcommand of > - linkgit:git-remote[1]. > + If true, this remote will be skipped when updating > + using linkgit:git-fetch[1], the `update` subcommand of > + linkgit:git-remote[1], and ignored by the prefetch task > + of `git maitenance`. > > remote..receivepack:: > The default program to execute on the remote side when pushing. See > diff --git c/Documentation/git-maintenance.txt w/Documentation/git-maintenance.txt > index 51d0f7e94b..9d96819133 100644 > --- c/Documentation/git-maintenance.txt > +++ w/Documentation/git-maintenance.txt > @@ -107,6 +107,9 @@ with the prefetch task, the objects necessary to complete a later real fetch > would already be obtained, making the real fetch faster. In the ideal case, > it will just become an update to a bunch of remote-tracking branches without > any object transfer. > ++ > +The `remote..skipFetchAll` configuration can be used to > +exclude a particular remote from getting prefetched. > > gc:: > Clean up unnecessary files and optimize the local repository. "GC" >