1
0
mirror of https://github.com/git/git.git synced 2024-11-19 00:44:22 +01:00

check_connected: add progress flag

Connectivity checks have to traverse the entire object graph
in the worst case (e.g., a full clone or a full push). For
large repositories like linux.git, this can take 30-60
seconds, during which time git may produce little or no
output.

Let's add the option of showing progress, which is taken
care of by rev-list.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Jeff King 2016-07-15 06:32:28 -04:00 committed by Junio C Hamano
parent e0331849a0
commit 70d5e2d77b
2 changed files with 6 additions and 0 deletions

@ -58,6 +58,9 @@ int check_connected(sha1_iterate_fn fn, void *cb_data,
argv_array_push(&rev_list.args, "--not");
argv_array_push(&rev_list.args, "--all");
argv_array_push(&rev_list.args, "--quiet");
if (opt->progress)
argv_array_pushf(&rev_list.args, "--progress=%s",
_("Checking connectivity"));
rev_list.git_cmd = 1;
rev_list.in = -1;

@ -30,6 +30,9 @@ struct check_connected_options {
* returns.
*/
int err_fd;
/* If non-zero, show progress as we traverse the objects. */
int progress;
};
#define CHECK_CONNECTED_INIT { 0 }