This a helper builtin that will be used to port some parts of "git-rebase--interactive.sh" to C. It currently does nothing except checking arguments it is passed. Signed-off-by: Christian Couder <chriscool@xxxxxxxxxxxxx> --- .gitignore | 1 + Makefile | 1 + builtin-sequencer--helper.c | 27 +++++++++++++++++++++++++++ builtin.h | 1 + git.c | 1 + 5 files changed, 31 insertions(+), 0 deletions(-) create mode 100644 builtin-sequencer--helper.c diff --git a/.gitignore b/.gitignore index 04926fc..98711c3 100644 --- a/.gitignore +++ b/.gitignore @@ -117,6 +117,7 @@ git-revert git-rm git-send-email git-send-pack +git-sequencer--helper git-sh-setup git-shell git-shortlog diff --git a/Makefile b/Makefile index 4e8f45d..10bb7f5 100644 --- a/Makefile +++ b/Makefile @@ -632,6 +632,7 @@ BUILTIN_OBJS += builtin-rev-parse.o BUILTIN_OBJS += builtin-revert.o BUILTIN_OBJS += builtin-rm.o BUILTIN_OBJS += builtin-send-pack.o +BUILTIN_OBJS += builtin-sequencer--helper.o BUILTIN_OBJS += builtin-shortlog.o BUILTIN_OBJS += builtin-show-branch.o BUILTIN_OBJS += builtin-show-ref.o diff --git a/builtin-sequencer--helper.c b/builtin-sequencer--helper.c new file mode 100644 index 0000000..721c0d8 --- /dev/null +++ b/builtin-sequencer--helper.c @@ -0,0 +1,27 @@ +#include "builtin.h" +#include "cache.h" +#include "parse-options.h" + +static const char * const git_sequencer_helper_usage[] = { + "git sequencer--helper --make-patch <commit>", + NULL +}; + +int cmd_sequencer__helper(int argc, const char **argv, const char *prefix) +{ + char *commit = NULL; + struct option options[] = { + OPT_STRING(0, "make-patch", &commit, "commit", + "create a patch from commit"), + OPT_END() + }; + + argc = parse_options(argc, argv, prefix, options, + git_sequencer_helper_usage, 0); + + if (!commit) + usage_with_options(git_sequencer_helper_usage, options); + + /* Nothing to do yet */ + return 0; +} diff --git a/builtin.h b/builtin.h index 38ceddc..d181669 100644 --- a/builtin.h +++ b/builtin.h @@ -92,6 +92,7 @@ extern int cmd_rev_parse(int argc, const char **argv, const char *prefix); extern int cmd_revert(int argc, const char **argv, const char *prefix); extern int cmd_rm(int argc, const char **argv, const char *prefix); extern int cmd_send_pack(int argc, const char **argv, const char *prefix); +extern int cmd_sequencer__helper(int argc, const char **argv, const char *prefix); extern int cmd_shortlog(int argc, const char **argv, const char *prefix); extern int cmd_show(int argc, const char **argv, const char *prefix); extern int cmd_show_branch(int argc, const char **argv, const char *prefix); diff --git a/git.c b/git.c index 479279b..3e4b4ad 100644 --- a/git.c +++ b/git.c @@ -349,6 +349,7 @@ static void handle_internal_command(int argc, const char **argv) { "revert", cmd_revert, RUN_SETUP | NEED_WORK_TREE }, { "rm", cmd_rm, RUN_SETUP }, { "send-pack", cmd_send_pack, RUN_SETUP }, + { "sequencer--helper", cmd_sequencer__helper, RUN_SETUP | NEED_WORK_TREE }, { "shortlog", cmd_shortlog, USE_PAGER }, { "show-branch", cmd_show_branch, RUN_SETUP }, { "show", cmd_show, RUN_SETUP | USE_PAGER }, -- 1.6.3.GIT -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html