diff options
-rw-r--r-- | clone-pack.c | 9 | ||||
-rwxr-xr-x | git-clone-script | 8 |
2 files changed, 12 insertions, 5 deletions
diff --git a/clone-pack.c b/clone-pack.c index 31152c7f9..8f5209cfd 100644 --- a/clone-pack.c +++ b/clone-pack.c @@ -3,6 +3,7 @@ #include "pkt-line.h" #include <sys/wait.h> +static int quiet; static const char clone_pack_usage[] = "git-clone-pack [host:]directory [heads]*"; static const char *exec = "git-upload-pack"; @@ -154,7 +155,8 @@ static int clone_pack(int fd[2], int nr_match, char **match) close(fd[1]); dup2(fd[0], 0); close(fd[0]); - execlp("git-unpack-objects", "git-unpack-objects", NULL); + execlp("git-unpack-objects", "git-unpack-objects", + quiet ? "-q" : NULL, NULL); die("git-unpack-objects exec failed"); } close(fd[0]); @@ -190,7 +192,10 @@ int main(int argc, char **argv) char *arg = argv[i]; if (*arg == '-') { - /* Arguments go here */ + if (!strcmp("-q", arg)) { + quiet = 1; + continue; + } usage(clone_pack_usage); } dest = arg; diff --git a/git-clone-script b/git-clone-script index 01707e92a..5a241fb25 100755 --- a/git-clone-script +++ b/git-clone-script @@ -14,11 +14,13 @@ get_repo_base() { (cd "$1" && (cd .git ; pwd)) 2> /dev/null } +quiet= use_local=no while case "$#,$1" in 0,*) break ;; *,-l|*,--l|*,--lo|*,--loc|*,--loca|*,--local) use_local=yes ;; + *,-q|*,--quiet) quiet=-q ;; *,-*) usage ;; *) break ;; esac @@ -81,14 +83,14 @@ esac case "$repo" in rsync://*) - rsync -avz --ignore-existing "$repo/objects/" "$D/.git/objects/" && - rsync -avz --ignore-existing "$repo/refs/" "$D/.git/refs/" + rsync $quiet -avz --ignore-existing "$repo/objects/" "$D/.git/objects/" && + rsync $quiet -avz --ignore-existing "$repo/refs/" "$D/.git/refs/" ;; http://*) echo "Somebody should add http fetch" >&2 exit 1 ;; *) - cd "$D" && git-clone-pack "$repo" + cd "$D" && git-clone-pack $quiet "$repo" ;; esac |