diff options
author | Junio C Hamano <gitster@pobox.com> | 2013-10-18 13:49:51 -0700 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2013-10-18 13:49:51 -0700 |
commit | f94a84c408babe92f951050a69e23df537302e54 (patch) | |
tree | 70f65fc10c388184b5127a1df933248a381d5ef6 /builtin | |
parent | 039048e6539623a80618247724eef977c6a855b7 (diff) | |
parent | 643f918d13906cbccdc5ad188767fc7895e30fc1 (diff) | |
download | git-f94a84c408babe92f951050a69e23df537302e54.tar.gz git-f94a84c408babe92f951050a69e23df537302e54.tar.xz |
Merge branch 'jk/clone-progress-to-stderr'
Some progress and diagnostic messages from "git clone" were
incorrectly sent to the standard output stream, not to the standard
error stream.
* jk/clone-progress-to-stderr:
clone: always set transport options
clone: treat "checking connectivity" like other progress
clone: send diagnostic messages to stderr
Diffstat (limited to 'builtin')
-rw-r--r-- | builtin/clone.c | 44 |
1 files changed, 21 insertions, 23 deletions
diff --git a/builtin/clone.c b/builtin/clone.c index b708c115a..874e0fd0b 100644 --- a/builtin/clone.c +++ b/builtin/clone.c @@ -379,7 +379,7 @@ static void clone_local(const char *src_repo, const char *dest_repo) } if (0 <= option_verbosity) - printf(_("done.\n")); + fprintf(stderr, _("done.\n")); } static const char *junk_work_tree; @@ -550,13 +550,13 @@ static void update_remote_refs(const struct ref *refs, const struct ref *rm = mapped_refs; if (check_connectivity) { - if (0 <= option_verbosity) - printf(_("Checking connectivity... ")); + if (transport->progress) + fprintf(stderr, _("Checking connectivity... ")); if (check_everything_connected_with_transport(iterate_ref_map, 0, &rm, transport)) die(_("remote did not send all necessary objects")); - if (0 <= option_verbosity) - printf(_("done.\n")); + if (transport->progress) + fprintf(stderr, _("done.\n")); } if (refs) { @@ -849,9 +849,9 @@ int cmd_clone(int argc, const char **argv, const char *prefix) if (0 <= option_verbosity) { if (option_bare) - printf(_("Cloning into bare repository '%s'...\n"), dir); + fprintf(stderr, _("Cloning into bare repository '%s'...\n"), dir); else - printf(_("Cloning into '%s'...\n"), dir); + fprintf(stderr, _("Cloning into '%s'...\n"), dir); } init_db(option_template, INIT_DB_QUIET); write_config(&option_config); @@ -884,27 +884,25 @@ int cmd_clone(int argc, const char **argv, const char *prefix) remote = remote_get(option_origin); transport = transport_get(remote, remote->url[0]); - if (!is_local) { - if (!transport->get_refs_list || !transport->fetch) - die(_("Don't know how to clone %s"), transport->url); + if (!transport->get_refs_list || (!is_local && !transport->fetch)) + die(_("Don't know how to clone %s"), transport->url); - transport_set_option(transport, TRANS_OPT_KEEP, "yes"); + transport_set_option(transport, TRANS_OPT_KEEP, "yes"); - if (option_depth) - transport_set_option(transport, TRANS_OPT_DEPTH, - option_depth); - if (option_single_branch) - transport_set_option(transport, TRANS_OPT_FOLLOWTAGS, "1"); + if (option_depth) + transport_set_option(transport, TRANS_OPT_DEPTH, + option_depth); + if (option_single_branch) + transport_set_option(transport, TRANS_OPT_FOLLOWTAGS, "1"); - transport_set_verbosity(transport, option_verbosity, option_progress); + transport_set_verbosity(transport, option_verbosity, option_progress); - if (option_upload_pack) - transport_set_option(transport, TRANS_OPT_UPLOADPACK, - option_upload_pack); + if (option_upload_pack) + transport_set_option(transport, TRANS_OPT_UPLOADPACK, + option_upload_pack); - if (transport->smart_options && !option_depth) - transport->smart_options->check_self_contained_and_connected = 1; - } + if (transport->smart_options && !option_depth) + transport->smart_options->check_self_contained_and_connected = 1; refs = transport_get_remote_refs(transport); |