git@vger.kernel.org list mirror (unofficial, one of many)
 help / color / mirror / code / Atom feed
From: "Derrick Stolee via GitGitGadget" <gitgitgadget@gmail.com>
To: git@vger.kernel.org
Cc: git@jeffhostetler, Junio C Hamano <gitster@pobox.com>
Subject: [PATCH 0/3] fetch: add --[no-]show-forced-updates
Date: Tue, 18 Jun 2019 13:25:25 -0700 (PDT)	[thread overview]
Message-ID: <pull.273.git.gitgitgadget@gmail.com> (raw)

The git fetch builtin includes a calculation to see if the ref values were
forced updates (i.e. if the old value is not in the history of the new
value). In a repo with many refs and a fast-moving history, this calculation
can be very slow.

This series adds a new --[no-]show-forced-updates option to 'git fetch' to
avoid this calculation when requested. Further:

 1. Add a new fetch.showForcedUpdates config setting that provides a default
    value for --[no-]show-forced-updates.
    
    
 2. Add a new advice.fetchShowForcedUpdates config setting associated with a
    warning that suggests fetch.showForcedUpdates when the calculation takes
    a long time, or warns about the lack of "(forced update)" messages.
    
    
 3. Add the command-line options to 'git pull'.
    
    

We have been running with these commits in microsoft/git for a while now and
no user has complained that the messages were removed (VFS for Git sets 
fetch.showForcedUpdates=false by default). Users have complained about the
warning messages always appearing, so this series includes the advice config
setting. Further, I added a test to demonstrate the behavior change between
the two options.

The fetch.showForcedUpdates config setting is a candidate to be added to the
proposed "large repo" meta-config setting previously discussed [1]. I'm
putting this out for independent review as it is much smaller compared to
the potential of that series.

Thanks, -Stolee

[1] https://public-inbox.org/git/pull.254.git.gitgitgadget@gmail.com/

Derrick Stolee (3):
  fetch: add --[no-]show-forced-updates argument
  fetch: warn about forced updates in branch listing
  pull: add --[no-]show-forced-updates passthrough

 Documentation/config/advice.txt |  4 ++++
 Documentation/config/fetch.txt  |  5 +++++
 Documentation/fetch-options.txt | 13 +++++++++++++
 advice.c                        |  2 ++
 advice.h                        |  1 +
 builtin/fetch.c                 | 34 ++++++++++++++++++++++++++++++++-
 builtin/pull.c                  |  7 +++++++
 t/t5510-fetch.sh                | 23 ++++++++++++++++++++++
 8 files changed, 88 insertions(+), 1 deletion(-)


base-commit: b697d92f56511e804b8ba20ccbe7bdc85dc66810
Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-273%2Fderrickstolee%2Fshow-forced-updates-v1
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-273/derrickstolee/show-forced-updates-v1
Pull-Request: https://github.com/gitgitgadget/git/pull/273
-- 
gitgitgadget

             reply	other threads:[~2019-06-18 20:25 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-06-18 20:25 Derrick Stolee via GitGitGadget [this message]
2019-06-18 20:25 ` [PATCH 1/3] fetch: add --[no-]show-forced-updates argument Derrick Stolee via GitGitGadget
2019-07-30 21:29   ` [PATCH] t5510-fetch: fix negated 'test_i18ngrep' invocation SZEDER Gábor
2019-07-30 21:40     ` SZEDER Gábor
2019-07-31 10:35       ` Derrick Stolee
2019-08-01 15:53       ` [PATCH 0/3] tests: run non-httpd-specific tests before sourcing 'lib-httpd.sh' SZEDER Gábor
2019-08-01 15:53         ` [PATCH 1/3] t5510-fetch: run non-httpd-specific test " SZEDER Gábor
2019-08-01 17:51           ` Derrick Stolee
2019-08-01 15:53         ` [PATCH 2/3] t5703: run all non-httpd-specific tests " SZEDER Gábor
2019-08-01 15:53         ` [PATCH 3/3] tests: warn against appending non-httpd-specific tests at the end SZEDER Gábor
2019-08-01 17:41           ` SZEDER Gábor
2019-08-01 18:18             ` Junio C Hamano
2019-08-02 10:09               ` SZEDER Gábor
2019-08-02 16:37                 ` Junio C Hamano
2019-06-18 20:25 ` [PATCH 2/3] fetch: warn about forced updates in branch listing Derrick Stolee via GitGitGadget
2019-06-18 20:25 ` [PATCH 3/3] pull: add --[no-]show-forced-updates passthrough Derrick Stolee via GitGitGadget

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: http://vger.kernel.org/majordomo-info.html

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=pull.273.git.gitgitgadget@gmail.com \
    --to=gitgitgadget@gmail.com \
    --cc=git@jeffhostetler \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    --subject='Re: [PATCH 0/3] fetch: add --[no-]show-forced-updates' \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

Code repositories for project(s) associated with this 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).