* [PATCH v2 5/7] Teach upload-pack to log the received need lines to fd 3
@ 2008-03-01 5:25 Shawn O. Pearce
0 siblings, 0 replies; only message in thread
From: Shawn O. Pearce @ 2008-03-01 5:25 UTC (permalink / raw)
To: Junio C Hamano; +Cc: git
To facilitate testing and verification of the requests sent by git-fetch
to the remote side we permit logging the received packet lines to file
descriptor 3 if GIT_DEBUG_SEND_PACK has been set. Special start and
end lines are included to indicate the start and end of each connection.
$ GIT_DEBUG_SEND_PACK=1 git fetch 3>UPLOAD_LOG
$ cat UPLOAD_LOG
#S
want 8e10cf4e007ad7e003463c30c34b1050b039db78 multi_ack side-band-64k thin-pack ofs-delta
want ddfa4a33562179aca1ace2bcc662244a17d0b503
#E
#S
want 3253df4d1cf6fb138b52b1938473bcfec1483223 multi_ack side-band-64k thin-pack ofs-delta
#E
>From the above trace the first connection opened by git-fetch was to
download two refs (with values 8e and dd) and the second connection
was opened to automatically follow an annotated tag (32).
Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
---
upload-pack.c | 7 +++++++
1 files changed, 7 insertions(+), 0 deletions(-)
diff --git a/upload-pack.c b/upload-pack.c
index b26d053..4e14020 100644
--- a/upload-pack.c
+++ b/upload-pack.c
@@ -444,7 +444,10 @@ static void receive_needs(void)
struct object_array shallows = {0, 0, NULL};
static char line[1000];
int len, depth = 0;
+ int debug_needs = !!getenv("GIT_DEBUG_SEND_PACK");
+ if (debug_needs)
+ write_in_full(3, "#S\n", 3);
for (;;) {
struct object *o;
unsigned char sha1_buf[20];
@@ -452,6 +455,8 @@ static void receive_needs(void)
reset_timeout();
if (!len)
break;
+ if (debug_needs)
+ write_in_full(3, line, len);
if (!prefixcmp(line, "shallow ")) {
unsigned char sha1[20];
@@ -507,6 +512,8 @@ static void receive_needs(void)
add_object_array(o, NULL, &want_obj);
}
}
+ if (debug_needs)
+ write_in_full(3, "#E\n", 3);
if (depth == 0 && shallows.nr == 0)
return;
if (depth > 0) {
--
1.5.4.3.409.g88113
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2008-03-01 5:25 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-03-01 5:25 [PATCH v2 5/7] Teach upload-pack to log the received need lines to fd 3 Shawn O. Pearce
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).