push: learn --progress
authorTay Ray Chuan <rctay89@gmail.com>
Wed, 24 Feb 2010 12:50:27 +0000 (20:50 +0800)
committerJunio C Hamano <gitster@pobox.com>
Wed, 24 Feb 2010 16:35:44 +0000 (08:35 -0800)
Signed-off-by: Tay Ray Chuan <rctay89@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Documentation/git-push.txt
builtin-push.c

index 22cff99b457646af2570718d401b7c7f74839aa4..8d957244bd6cba71e0387da1dbcffe2ae1da30d6 100644 (file)
@@ -148,12 +148,19 @@ useful if you write an alias or script around 'git push'.
 -q::
 --quiet::
        Suppress all output, including the listing of updated refs,
-       unless an error occurs.
+       unless an error occurs. Progress is not reported to the standard
+       error stream.
 
 -v::
 --verbose::
        Run verbosely.
 
+--progress::
+       Progress status is reported on the standard error stream
+       by default when it is attached to a terminal, unless -q
+       is specified. This flag forces progress status even if the
+       standard error stream is not directed to a terminal.
+
 include::urls-remotes.txt[]
 
 OUTPUT
index dce3152fec7b73821fa1a27cd841c7bd973d966c..ba9fe49034e1b4cbdc2d1b2168b8c6495f5b00fb 100644 (file)
@@ -18,6 +18,7 @@ static int thin;
 static int deleterefs;
 static const char *receivepack;
 static int verbosity;
+static int progress;
 
 static const char **refspec;
 static int refspec_nr;
@@ -107,7 +108,7 @@ static int push_with_options(struct transport *transport, int flags)
        int err;
        int nonfastforward;
 
-       transport_set_verbosity(transport, verbosity, 0);
+       transport_set_verbosity(transport, verbosity, progress);
 
        if (receivepack)
                transport_set_option(transport,
@@ -223,6 +224,7 @@ int cmd_push(int argc, const char **argv, const char *prefix)
                OPT_STRING( 0 , "exec", &receivepack, "receive-pack", "receive pack program"),
                OPT_BIT('u', "set-upstream", &flags, "set upstream for git pull/status",
                        TRANSPORT_PUSH_SET_UPSTREAM),
+               OPT_BOOLEAN(0, "progress", &progress, "force progress reporting"),
                OPT_END()
        };