From: Jeff Hostetler <git@jeffhostetler.com>
To: git@vger.kernel.org
Cc: gitster@pobox.com, peff@peff.net,
Jeff Hostetler <jeffhost@microsoft.com>
Subject: [PATCH 0/4] Add --no-ahead-behind to status
Date: Wed, 20 Dec 2017 14:42:41 +0000 [thread overview]
Message-ID: <20171220144245.39401-1-git@jeffhostetler.com> (raw)
From: Jeff Hostetler <jeffhost@microsoft.com>
This patch series adds a "--no-ahead-behind" option to status
to request that it avoid a possibly expensive ahead/behind
computation for the current branch. Instead, it just prints a
not up to date message in place of the detailed counts.
This idea was previously discussed in [1]. Working with the
enormous Windows repository, we found that 20+ seconds was being
spent in the ahead/behind computation when the current branch was
150K commits behind the upstream branch. (Yes, this happens and
only took 3 weeks on the reporter's system.)
I've only modified "git status" in this patch series. A similar
change could be added to "git branch -vv" and "git checkout" to
avoid delays there too. I avoided doing it here to keep this
patch series focused.
[1] https://public-inbox.org/git/030bf57c-7a23-3391-4fc0-93efee791543@jeffhostetler.com/T/
Jeff Hostetler (4):
status: add --no-ahead-behind to porcelain V2
stat_tracking_info: return +1 when branch and upstream differ
status: update short status to use --no-ahead-behind
status: support --no-ahead-behind in long status format.
Documentation/config.txt | 5 +++++
Documentation/git-status.txt | 16 ++++++++++++++++
builtin/checkout.c | 2 +-
builtin/commit.c | 6 ++++++
ref-filter.c | 4 ++--
remote.c | 36 ++++++++++++++++++++++++++++--------
remote.h | 4 +++-
t/t6040-tracking-info.sh | 42 ++++++++++++++++++++++++++++++++++++++++++
t/t7064-wtstatus-pv2.sh | 23 +++++++++++++++++++++++
wt-status.c | 24 ++++++++++++++++++++----
wt-status.h | 1 +
11 files changed, 147 insertions(+), 16 deletions(-)
--
2.9.3
next reply other threads:[~2017-12-20 14:43 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-12-20 14:42 Jeff Hostetler [this message]
2017-12-20 14:42 ` [PATCH 1/4] status: add --no-ahead-behind to porcelain V2 Jeff Hostetler
2017-12-20 16:07 ` Jeff King
2017-12-20 16:33 ` Jeff King
2017-12-20 19:44 ` Jeff Hostetler
2017-12-20 14:42 ` [PATCH 2/4] stat_tracking_info: return +1 when branch and upstream differ Jeff Hostetler
2017-12-20 16:14 ` Jeff King
2017-12-20 16:37 ` Jeff King
2017-12-21 14:06 ` Jeff Hostetler
2017-12-20 14:42 ` [PATCH 3/4] status: update short status to use --no-ahead-behind Jeff Hostetler
2017-12-20 16:26 ` Jeff King
2017-12-21 14:18 ` Jeff Hostetler
2017-12-21 15:39 ` Jeff King
2017-12-21 17:47 ` Jeff Hostetler
2017-12-20 14:42 ` [PATCH 4/4] status: support --no-ahead-behind in long status format Jeff Hostetler
2017-12-20 16:33 ` Jeff King
2017-12-20 16:43 ` [PATCH 0/4] Add --no-ahead-behind to status Jeff King
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
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20171220144245.39401-1-git@jeffhostetler.com \
--to=git@jeffhostetler.com \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=jeffhost@microsoft.com \
--cc=peff@peff.net \
/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
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.