diff options
author | Glen Choo <chooglen@google.com> | 2022-01-18 16:00:55 -0800 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2022-01-18 16:22:57 -0800 |
commit | 135a12bc1472290ca6b9a4c2f06c838a1495a612 (patch) | |
tree | f35a1c2886cda9e518476eb325d8c672c4d4b26a /builtin/checkout--worker.c | |
parent | fetch: use goto cleanup in cmd_fetch() (diff) | |
download | tgif-135a12bc1472290ca6b9a4c2f06c838a1495a612.tar.xz |
fetch: skip tasks related to fetching objects
cmd_fetch() does the following with the assumption that objects are
fetched:
* Run gc
* Write commit graphs (if enabled by fetch.writeCommitGraph=true)
However, neither of these tasks makes sense if objects are not fetched
e.g. `git fetch --negotiate-only` never fetches objects.
Speed up cmd_fetch() by bailing out early if we know for certain that
objects will not be fetched. cmd_fetch() can bail out early whenever
objects are not fetched, but for now this only considers
--negotiate-only.
The same optimization does not apply to `git fetch --dry-run` because
that actually fetches objects; the dry run refers to not updating refs.
Signed-off-by: Glen Choo <chooglen@google.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'builtin/checkout--worker.c')
0 files changed, 0 insertions, 0 deletions