Implement -v (verbose) option for pull methods other than local transport.

This moves the private "say()" function to pull.c, renames it to
"pull_say()", and introduces a global variable "get_verbosely" that
makes the pull backends report what they fetch.  The -v option is
added to git-rpull and git-http-pull to match git-local-pull.

The documentation is updated to describe these pull commands.

Signed-off-by: Junio C Hamano <junkio@cox.net>
This commit is contained in:
Junio C Hamano
2005-05-06 01:37:21 -07:00
parent cc167ccaeb
commit e78d97723c
6 changed files with 60 additions and 15 deletions

View File

@ -14,15 +14,9 @@
static int use_link = 0;
static int use_symlink = 0;
static int use_filecopy = 1;
static int verbose = 0;
static char *path;
static void say(const char *fmt, const char *hex) {
if (verbose)
fprintf(stderr, fmt, hex);
}
int fetch(unsigned char *sha1)
{
static int object_name_start = -1;
@ -41,7 +35,7 @@ int fetch(unsigned char *sha1)
strcpy(filename + object_name_start + 3, hex + 2);
if (use_link) {
if (!link(filename, dest_filename)) {
say("link %s\n", hex);
pull_say("link %s\n", hex);
return 0;
}
/* If we got ENOENT there is no point continuing. */
@ -51,7 +45,7 @@ int fetch(unsigned char *sha1)
}
}
if (use_symlink && !symlink(filename, dest_filename)) {
say("symlink %s\n", hex);
pull_say("symlink %s\n", hex);
return 0;
}
if (use_filecopy) {
@ -79,7 +73,7 @@ int fetch(unsigned char *sha1)
fprintf(stderr, "cannot write %s (%ld bytes)\n",
dest_filename, st.st_size);
else
say("copy %s\n", hex);
pull_say("copy %s\n", hex);
return status;
}
fprintf(stderr, "failed to copy %s with given copy methods.\n", hex);
@ -117,7 +111,7 @@ int main(int argc, char **argv)
else if (argv[arg][1] == 'n')
use_filecopy = 0;
else if (argv[arg][1] == 'v')
verbose = 1;
get_verbosely = 1;
else
usage(local_pull_usage);
arg++;