git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH/WIP] Repair DF conflicts during fetch.

From
TMTom Miller <jackerran@gmail.com>
Date
Nov 29, 2013, 17:57 UTC
Message-ID
<1385747858-29343-2-git-send-email-jackerran@gmail.com>
In-Reply-To
<1385747858-29343-1-git-send-email-jackerran@gmail.com>

When a DF conflict occurs during a fetch, --prune should be able to fix it. When fetching with --prune, the fetching process happens before pruning causing the DF conflict to persist and report an error. This patch prunes before fetching, thus correcting DF conflicts during a fetch.

Signed-off-by: Tom Miller <jackerran@gmail.com>
---
 builtin/fetch.c | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/builtin/fetch.c b/builtin/fetch.c
index bd7a101..f7959d0 100644
--- a/builtin/fetch.c
+++ b/builtin/fetch.c
@@ -824,11 +824,6 @@ static int do_fetch(struct transport *transport,
 
 	if (tags == TAGS_DEFAULT && autotags)
 		transport_set_option(transport, TRANS_OPT_FOLLOWTAGS, "1");
-	if (fetch_refs(transport, ref_map)) {
-		free_refs(ref_map);
-		retcode = 1;
-		goto cleanup;
-	}
 	if (prune) {
 		/*
 		 * If --tags was specified, pretend that the user gave us
@@ -857,6 +852,11 @@ static int do_fetch(struct transport *transport,
 			prune_refs(transport->remote->fetch, transport->remote->fetch_refspec_nr, ref_map);
 		}
 	}
+	if (fetch_refs(transport, ref_map)) {
+		free_refs(ref_map);
+		retcode = 1;
+		goto cleanup;
+	}
 	free_refs(ref_map);
 
 	/* if neither --no-tags nor --tags was specified, do automated tag
-- 
1.8.5.rc3.dirty
Previous: Tom MillerNext: Thomas Rast
Message 2 of 4 in “Repair DF conflicts during fetch.”
  1. Repair DF conflicts during fetch.Tom Miller, Nov 29, 2013
  2. Repair DF conflicts during fetch.Tom Miller, Nov 29, 2013
  3. Thomas RastNov 29, 2013
  4. Thomas MillerDec 1, 2013

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.