On Sat, Oct 12, 2013 at 3:04 AM, Felipe Contreras <felipe.contreras@xxxxxxxxx> wrote: > SYNOPSIS > -------- > [verse] > -'git stage' args... > - > +'git stage' [options] [--] [<paths>...] > +'git stage add' [options] [--] [<paths>...] > +'git stage reset' [-q|--patch] [--] [<paths>...] > +'git stage diff' [options] [<commit>] [--] [<paths>...] > +'git stage rm' [options] [--] [<paths>...] > +'git stage apply' [options] [--] [<paths>...] > > diff --git a/builtin/stage.c b/builtin/stage.c > new file mode 100644 > index 0000000..3023d17 > --- /dev/null > +++ b/builtin/stage.c > @@ -0,0 +1,52 @@ > +/* > + * 'git stage' builtin command > + * > + * Copyright (C) 2013 Felipe Contreras > + */ > + > +#include "builtin.h" > +#include "parse-options.h" > + > +static const char *const stage_usage[] = { > + N_("git stage [options] [--] <paths>..."), > + N_("git stage add [options] [--] <paths>..."), > + N_("git stage reset [-q|--patch] [--] <paths>..."), > + N_("git stage diff [options] [<commit]> [--] <paths>..."), > + N_("git stage rm [options] [--] <paths>..."), > + NULL > +}; Missing usage for "git stage apply". > + > +int cmd_stage(int argc, const char **argv, const char *prefix) > +{ > + struct option options[] = { OPT_END() }; > + > + argc = parse_options(argc, argv, prefix, options, stage_usage, > + PARSE_OPT_KEEP_ARGV0 | PARSE_OPT_KEEP_UNKNOWN | PARSE_OPT_KEEP_DASHDASH); > + > + if (argc > 1) { > + if (!strcmp(argv[1], "add")) > + return cmd_add(argc - 1, argv + 1, prefix); > + if (!strcmp(argv[1], "reset")) > + return cmd_reset(argc - 1, argv + 1, prefix); > + if (!strcmp(argv[1], "diff")) { > + argv[0] = "diff"; > + argv[1] = "--staged"; > + > + return cmd_diff(argc, argv, prefix); > + } > + if (!strcmp(argv[1], "rm")) { > + argv[0] = "rm"; > + argv[1] = "--cached"; > + > + return cmd_rm(argc, argv, prefix); > + } > + if (!strcmp(argv[1], "apply")) { > + argv[0] = "apply"; > + argv[1] = "--cached"; > + > + return cmd_apply(argc, argv, prefix); > + } > + } > + > + return cmd_add(argc, argv, prefix); > +} -- 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