diff options
author | Shawn Bohrer <shawn.bohrer@gmail.com> | 2007-11-11 19:48:47 -0600 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2007-11-18 19:11:42 -0800 |
commit | 113f10f22f4b3b599e44e192e241e0bace9cc39e (patch) | |
tree | 83fdfa4897870cb07cea1ea4b8afa129e0c50e34 /builtin.h | |
parent | ea55960518bb104020c02aa2f64b33f93d1775e7 (diff) | |
download | git-113f10f22f4b3b599e44e192e241e0bace9cc39e.tar.gz git-113f10f22f4b3b599e44e192e241e0bace9cc39e.tar.xz |
Make git-clean a builtin
This replaces git-clean.sh with builtin-clean.c, and moves
git-clean.sh to the examples.
This also introduces a change in behavior when removing directories
explicitly specified as a path. For example currently:
1. When dir has only untracked files, these two behave differently:
$ git clean -n dir
$ git clean -n dir/
the former says "Would not remove dir/", while the latter would say
"Would remove dir/untracked" for all paths under it, but not the
directory itself.
With -d, the former would stop refusing, however since the user
explicitly asked to remove the directory the -d is no longer required.
2. When there are more parameters:
$ git clean -n dir foo
$ git clean -n dir/ foo
both cases refuse to remove dir/ unless -d is specified. Once again
since both cases requested to remove dir the -d is no longer required.
Thanks to Johannes Schindelin for the conversion to using the
parse-options API.
Signed-off-by: Shawn Bohrer <shawn.bohrer@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'builtin.h')
-rw-r--r-- | builtin.h | 1 |
1 files changed, 1 insertions, 0 deletions
@@ -24,6 +24,7 @@ extern int cmd_check_attr(int argc, const char **argv, const char *prefix); extern int cmd_check_ref_format(int argc, const char **argv, const char *prefix); extern int cmd_cherry(int argc, const char **argv, const char *prefix); extern int cmd_cherry_pick(int argc, const char **argv, const char *prefix); +extern int cmd_clean(int argc, const char **argv, const char *prefix); extern int cmd_commit_tree(int argc, const char **argv, const char *prefix); extern int cmd_count_objects(int argc, const char **argv, const char *prefix); extern int cmd_describe(int argc, const char **argv, const char *prefix); |