--- builtin-rm.c | 11 ++++++++++- 1 files changed, 10 insertions(+), 1 deletions(-) diff --git a/builtin-rm.c b/builtin-rm.c index 57975db..d2982a0 100644 --- a/builtin-rm.c +++ b/builtin-rm.c @@ -137,6 +137,7 @@ static struct lock_file lock_file; static int show_only = 0, force = 0, index_only = 0, recursive = 0, quiet = 0; static int ignore_unmatch = 0; +static const char *file_id; static struct option builtin_rm_options[] = { OPT__DRY_RUN(&show_only), @@ -146,6 +147,7 @@ static struct option builtin_rm_options[] = { OPT_BOOLEAN('r', NULL, &recursive, "allow recursive removal"), OPT_BOOLEAN( 0 , "ignore-unmatch", &ignore_unmatch, "exit with a zero status even if nothing matched"), + OPT_STRING('d', "id", &file_id, "FILE_ID", "file id"), OPT_END(), }; @@ -154,11 +156,18 @@ int cmd_rm(int argc, const char **argv, const char *prefix) int i, newfd; const char **pathspec; char *seen; + char **new_argv; git_config(git_default_config, NULL); argc = parse_options(argc, argv, prefix, builtin_rm_options, builtin_rm_usage, 0); + + if (file_id) + new_argv = (char **) expand_file_ids(file_id, &argc, (char **) argv); + else + new_argv = (char **) argv; + if (!argc) usage_with_options(builtin_rm_usage, builtin_rm_options); @@ -171,7 +180,7 @@ int cmd_rm(int argc, const char **argv, const char *prefix) die("index file corrupt"); refresh_cache(REFRESH_QUIET); - pathspec = get_pathspec(prefix, argv); + pathspec = get_pathspec(prefix, (const char **) new_argv); seen = NULL; for (i = 0; pathspec[i] ; i++) /* nothing */; -- 1.6.4.13.ge6580 -- 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