path: root/builtin/fetch.c
diff options
authorJonathan Tan <>2020-09-02 21:05:39 (GMT)
committerJunio C Hamano <>2020-09-02 21:26:55 (GMT)
commitdb3c293ecded67128b74a03f01e65c6799ff1116 (patch)
tree6f6c6767953c0699421711dfe40867a54ce7971c /builtin/fetch.c
parent9dfa8dbeee18a126aabcdd36a06e5d6b5eb6a58a (diff)
fetch: no FETCH_HEAD display if --no-write-fetch-head
887952b8c6 ("fetch: optionally allow disabling FETCH_HEAD update", 2020-08-18) introduced the ability to disable writing to FETCH_HEAD during fetch, but did not suppress the "<source> -> FETCH_HEAD" message when this ability is used. This message is misleading in this case, because FETCH_HEAD is not written. Also, because "fetch" is used to lazy-fetch missing objects in a partial clone, this significantly clutters up the output in that case since the objects to be fetched are potentially numerous. Therefore, suppress this message when --no-write-fetch-head is passed (but not when --dry-run is set). Signed-off-by: Jonathan Tan <> Signed-off-by: Junio C Hamano <>
Diffstat (limited to 'builtin/fetch.c')
1 files changed, 7 insertions, 1 deletions
diff --git a/builtin/fetch.c b/builtin/fetch.c
index 320ba94..c6c4689 100644
--- a/builtin/fetch.c
+++ b/builtin/fetch.c
@@ -1023,11 +1023,17 @@ static int store_updated_refs(const char *raw_url, const char *remote_name,
rc |= update_local_ref(ref, what, rm, &note,
- } else
+ } else if (write_fetch_head || dry_run) {
+ /*
+ * Display fetches written to FETCH_HEAD (or
+ * would be written to FETCH_HEAD, if --dry-run
+ * is set).
+ */
format_display(&note, '*',
*kind ? kind : "branch", NULL,
*what ? what : "HEAD",
"FETCH_HEAD", summary_width);
+ }
if (note.len) {
if (verbosity >= 0 && !shown_url) {
fprintf(stderr, _("From %.*s\n"),