Currently, fetch-pack prints a confusing error message ("expected
ACK/NAK") when the server it's communicating with sends a pkt-line
starting with "ERR". Replace it with a less confusing error message.
(Git will send "ERR" lines when a "want" line references an object that
it does not have. This is uncommon, but can happen if a repository is
garbage-collected during a negotiation.)
Signed-off-by: Jonathan Tan <[email protected]>
---
This situation has been noticed occasionally in my company - this is a
small change that would make the situation slightly easier to
understand.
fetch-pack.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/fetch-pack.c b/fetch-pack.c
index d07d85ce3..688523bfd 100644
--- a/fetch-pack.c
+++ b/fetch-pack.c
@@ -276,6 +276,8 @@ static enum ack_type get_ack(int fd, unsigned char
*result_sha1)
return ACK;
}
}
+ if (skip_prefix(line, "ERR ", &arg))
+ die(_("git fetch-pack: got remote error '%s'"), arg);
die(_("git fetch-pack: expected ACK/NAK, got '%s'"), line);
}
--
2.12.2.715.g7642488e1d-goog