From: Dmitry Ivankov <divanorama@gmail.com>
To: git@vger.kernel.org
Cc: Jonathan Nieder <jrnieder@gmail.com>,
David Barr <davidbarr@google.com>,
Ramkumar Ramachandra <artagnon@gmail.com>,
Dmitry Ivankov <divanorama@gmail.com>
Subject: [PATCH v2 09/11] vcs-svn,svn-fe: allow to disable 'progress' lines
Date: Wed, 13 Jul 2011 18:21:11 +0600 [thread overview]
Message-ID: <1310559673-5026-10-git-send-email-divanorama@gmail.com> (raw)
In-Reply-To: <1310559673-5026-1-git-send-email-divanorama@gmail.com>
vcs-svn/ writes a progress line after each processed revision. It
is too noisy for big imports. That's a stress for a terminal and
any other output can be lost or scrolled away among these lines.
If svn-fe is invoked by a remote helper the import stream with
progress lines in it will go directly to the git fast-import which
always prints every progress line met in the stream.
For now just add a switch to turn progress lines off:
$ svn-fe --no-progress ...
Signed-off-by: Dmitry Ivankov <divanorama@gmail.com>
---
contrib/svn-fe/svn-fe.c | 3 +++
contrib/svn-fe/svn-fe.txt | 3 +++
test-svn-fe.c | 1 +
vcs-svn/svndump.c | 6 +++++-
vcs-svn/svndump.h | 1 +
5 files changed, 13 insertions(+), 1 deletions(-)
diff --git a/contrib/svn-fe/svn-fe.c b/contrib/svn-fe/svn-fe.c
index cd9e449..a388750 100644
--- a/contrib/svn-fe/svn-fe.c
+++ b/contrib/svn-fe/svn-fe.c
@@ -15,6 +15,9 @@ static const char * const svn_fe_usage[] = {
static struct svndump_args args;
static struct option svn_fe_options[] = {
+ { OPTION_BIT, 0, "progress", &args.progress,
+ NULL, "don't write a progress line after each commit",
+ PARSE_OPT_NOARG | PARSE_OPT_NEGHELP, NULL, 1 },
OPT_STRING(0, "git-svn-id-url", &args.url, "url",
"append git-svn metadata line to commit messages"),
OPT_STRING(0, "ref", &args.ref, "dst_ref",
diff --git a/contrib/svn-fe/svn-fe.txt b/contrib/svn-fe/svn-fe.txt
index a7ad368..f1a459e 100644
--- a/contrib/svn-fe/svn-fe.txt
+++ b/contrib/svn-fe/svn-fe.txt
@@ -39,6 +39,9 @@ OPTIONS
Integer number of file descriptor from which
responses to 'ls' and 'cat-blob' requests will come.
Default is fd=3.
+--[no-]progress::
+ Write 'progress' lines to fast-import stream. These
+ can be displayed by fast-import.
INPUT FORMAT
------------
diff --git a/test-svn-fe.c b/test-svn-fe.c
index 43e19b2..f2711e6 100644
--- a/test-svn-fe.c
+++ b/test-svn-fe.c
@@ -57,6 +57,7 @@ int main(int argc, const char *argv[])
{
args.ref = "refs/heads/master";
args.backflow_fd = 3;
+ args.progress = 1;
argc = parse_options(argc, argv, NULL, test_svnfe_options,
test_svnfe_usage, 0);
diff --git a/vcs-svn/svndump.c b/vcs-svn/svndump.c
index 4194052..6ad9f63 100644
--- a/vcs-svn/svndump.c
+++ b/vcs-svn/svndump.c
@@ -37,6 +37,8 @@
#define MAX_GITSVN_LINE_LEN 4096
+static int print_progress;
+
static struct line_buffer input = LINE_BUFFER_INIT;
static struct {
@@ -332,7 +334,8 @@ static void end_revision(void)
{
if (rev_ctx.revision) {
fast_export_end_commit(rev_ctx.revision);
- printf("progress Imported commit %"PRIu32".\n\n", rev_ctx.revision);
+ if (print_progress)
+ printf("progress Imported commit %"PRIu32".\n\n", rev_ctx.revision);
dump_ctx.first_commit_done = 1;
}
}
@@ -482,6 +485,7 @@ int svndump_init(const struct svndump_args *args)
{
if (buffer_init(&input, args->filename))
return error("cannot open %s: %s", args->filename, strerror(errno));
+ print_progress = args->progress;
fast_export_init(args->backflow_fd);
strbuf_init(&dump_ctx.uuid, 4096);
strbuf_init(&dump_ctx.url, 4096);
diff --git a/vcs-svn/svndump.h b/vcs-svn/svndump.h
index d266b68..af63edb 100644
--- a/vcs-svn/svndump.h
+++ b/vcs-svn/svndump.h
@@ -5,6 +5,7 @@ struct svndump_args {
const char *filename, *url;
const char *ref;
int backflow_fd;
+ int progress;
};
int svndump_init(const struct svndump_args *args);
--
1.7.3.4
next prev parent reply other threads:[~2011-07-13 12:21 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-07-13 12:21 [PATCH v2 00/11] vcs-svn,svn-fe add a couple of options Dmitry Ivankov
2011-07-13 12:21 ` [PATCH v2 01/11] svn-fe: add man target to Makefile Dmitry Ivankov
2011-07-24 12:52 ` Jonathan Nieder
2011-07-13 12:21 ` [PATCH v2 02/11] test-svn-fe: use parse-options Dmitry Ivankov
2011-07-24 13:04 ` Jonathan Nieder
2011-07-13 12:21 ` [PATCH v2 03/11] svn-fe: add EXTLIBS needed for parse-options Dmitry Ivankov
2011-07-24 13:14 ` Jonathan Nieder
2011-07-13 12:21 ` [PATCH v2 04/11] svn-fe: add usage and unpositional arguments versions Dmitry Ivankov
2011-07-24 13:25 ` Jonathan Nieder
2011-07-13 12:21 ` [PATCH v2 05/11] vcs-svn: move url parameter from _read to _init Dmitry Ivankov
2011-07-24 13:40 ` Jonathan Nieder
2011-07-13 12:21 ` [PATCH v2 06/11] vcs-svn: move commit parameters logic to svndump.c Dmitry Ivankov
2011-07-24 13:58 ` Jonathan Nieder
2011-07-13 12:21 ` [PATCH v2 07/11] vcs-svn,svn-fe: allow to specify dump destination ref Dmitry Ivankov
2011-07-25 8:57 ` Jonathan Nieder
2011-07-13 12:21 ` [PATCH v2 08/11] vcs-svn,svn-fe: convert REPORT_FILENO to an option Dmitry Ivankov
2011-07-25 21:26 ` Jonathan Nieder
2011-07-13 12:21 ` Dmitry Ivankov [this message]
2011-07-13 12:21 ` [PATCH v2 10/11] vcs-svn,svn-fe: add --incremental option Dmitry Ivankov
2011-07-25 21:35 ` Jonathan Nieder
2011-07-13 12:21 ` [PATCH v2 11/11] vcs-svn,svn-fe: add an option to write svnrev notes Dmitry Ivankov
2011-07-25 21:39 ` Jonathan Nieder
2011-07-28 6:03 ` Dmitry Ivankov
2011-07-28 10:27 ` Jonathan Nieder
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1310559673-5026-10-git-send-email-divanorama@gmail.com \
--to=divanorama@gmail.com \
--cc=artagnon@gmail.com \
--cc=davidbarr@google.com \
--cc=git@vger.kernel.org \
--cc=jrnieder@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.