fetch/clone: mark messages from remote side stand out.
authorJunio C Hamano <junkio@cox.net>
Tue, 1 Aug 2006 08:34:53 +0000 (01:34 -0700)
committerJunio C Hamano <junkio@cox.net>
Tue, 1 Aug 2006 08:43:26 +0000 (01:43 -0700)
When dealing with a corrupt or out of sync remote repository,
the user often gets error messages like this:

error: refs/heads/devel does not point to a valid commit object!

which leaves the user wondering if the breakage is on the local
end or on the remote end.  This is unnecessarily alarming.

This patch changes the way we display messages received from the
remote side over the git protocol sideband (i.e. stderr stream
of the remote process).  It shows them with blue background with
white letters, but this presentation is subject to proposals of
better ways from the list.

The problem was pointed out by Andrew Morton.

Signed-off-by: Junio C Hamano <junkio@cox.net>
fetch-clone.c

index 81d1371..692d9b7 100644 (file)
@@ -133,7 +133,10 @@ static pid_t setup_sideband(int sideband, const char *me, int fd[2], int xd[2])
                                fprintf(stderr, "\n");
                                exit(1);
                        case 2:
+                               /* color sideband */
+                               safe_write(2, "\033[44;37;1m", 10);
                                safe_write(2, buf+1, len);
+                               safe_write(2, "\033[m", 3);
                                continue;
                        case 1:
                                safe_write(fd[1], buf+1, len);