fast-export: support done feature
If fast-export is being used to generate a fast-import stream that will be used afterwards it is desirable to indicate the end of the stream with the new 'done' command. Add a flag that causes fast-export to end with 'done'. Signed-off-by: Sverre Rabbelier <srabbelier@gmail.com> Acked-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
be56862f19
commit
82670a5cb5
@ -82,6 +82,10 @@ marks the same across runs.
|
||||
allow that. So fake a tagger to be able to fast-import the
|
||||
output.
|
||||
|
||||
--use-done-feature::
|
||||
Start the stream with a 'feature done' stanza, and terminate
|
||||
it with a 'done' command.
|
||||
|
||||
--no-data::
|
||||
Skip output of blob objects and instead refer to blobs via
|
||||
their original SHA-1 hash. This is useful when rewriting the
|
||||
|
@ -26,6 +26,7 @@ static int progress;
|
||||
static enum { ABORT, VERBATIM, WARN, STRIP } signed_tag_mode = ABORT;
|
||||
static enum { ERROR, DROP, REWRITE } tag_of_filtered_mode = ABORT;
|
||||
static int fake_missing_tagger;
|
||||
static int use_done_feature;
|
||||
static int no_data;
|
||||
static int full_tree;
|
||||
|
||||
@ -627,6 +628,8 @@ int cmd_fast_export(int argc, const char **argv, const char *prefix)
|
||||
"Fake a tagger when tags lack one"),
|
||||
OPT_BOOLEAN(0, "full-tree", &full_tree,
|
||||
"Output full tree for each commit"),
|
||||
OPT_BOOLEAN(0, "use-done-feature", &use_done_feature,
|
||||
"Use the done feature to terminate the stream"),
|
||||
{ OPTION_NEGBIT, 0, "data", &no_data, NULL,
|
||||
"Skip output of blob data",
|
||||
PARSE_OPT_NOARG | PARSE_OPT_NEGHELP, NULL, 1 },
|
||||
@ -648,6 +651,9 @@ int cmd_fast_export(int argc, const char **argv, const char *prefix)
|
||||
if (argc > 1)
|
||||
usage_with_options (fast_export_usage, options);
|
||||
|
||||
if (use_done_feature)
|
||||
printf("feature done\n");
|
||||
|
||||
if (import_filename)
|
||||
import_marks(import_filename);
|
||||
|
||||
@ -675,5 +681,8 @@ int cmd_fast_export(int argc, const char **argv, const char *prefix)
|
||||
if (export_filename)
|
||||
export_marks(export_filename);
|
||||
|
||||
if (use_done_feature)
|
||||
printf("done\n");
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user