On Sat, Oct 12, 2013 at 3:04 AM, Felipe Contreras
<felipe.contre...@gmail.com> 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 majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to