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:

committed by
Junio C Hamano

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
|
allow that. So fake a tagger to be able to fast-import the
|
||||||
output.
|
output.
|
||||||
|
|
||||||
|
--use-done-feature::
|
||||||
|
Start the stream with a 'feature done' stanza, and terminate
|
||||||
|
it with a 'done' command.
|
||||||
|
|
||||||
--no-data::
|
--no-data::
|
||||||
Skip output of blob objects and instead refer to blobs via
|
Skip output of blob objects and instead refer to blobs via
|
||||||
their original SHA-1 hash. This is useful when rewriting the
|
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 { ABORT, VERBATIM, WARN, STRIP } signed_tag_mode = ABORT;
|
||||||
static enum { ERROR, DROP, REWRITE } tag_of_filtered_mode = ABORT;
|
static enum { ERROR, DROP, REWRITE } tag_of_filtered_mode = ABORT;
|
||||||
static int fake_missing_tagger;
|
static int fake_missing_tagger;
|
||||||
|
static int use_done_feature;
|
||||||
static int no_data;
|
static int no_data;
|
||||||
static int full_tree;
|
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"),
|
"Fake a tagger when tags lack one"),
|
||||||
OPT_BOOLEAN(0, "full-tree", &full_tree,
|
OPT_BOOLEAN(0, "full-tree", &full_tree,
|
||||||
"Output full tree for each commit"),
|
"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,
|
{ OPTION_NEGBIT, 0, "data", &no_data, NULL,
|
||||||
"Skip output of blob data",
|
"Skip output of blob data",
|
||||||
PARSE_OPT_NOARG | PARSE_OPT_NEGHELP, NULL, 1 },
|
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)
|
if (argc > 1)
|
||||||
usage_with_options (fast_export_usage, options);
|
usage_with_options (fast_export_usage, options);
|
||||||
|
|
||||||
|
if (use_done_feature)
|
||||||
|
printf("feature done\n");
|
||||||
|
|
||||||
if (import_filename)
|
if (import_filename)
|
||||||
import_marks(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)
|
if (export_filename)
|
||||||
export_marks(export_filename);
|
export_marks(export_filename);
|
||||||
|
|
||||||
|
if (use_done_feature)
|
||||||
|
printf("done\n");
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user