summaryrefslogtreecommitdiff
path: root/git.c
diff options
context:
space:
mode:
authorShawn Bohrer <shawn.bohrer@gmail.com>2007-11-12 01:48:47 (GMT)
committerJunio C Hamano <gitster@pobox.com>2007-11-19 03:11:42 (GMT)
commit113f10f22f4b3b599e44e192e241e0bace9cc39e (patch)
tree83fdfa4897870cb07cea1ea4b8afa129e0c50e34 /git.c
parentea55960518bb104020c02aa2f64b33f93d1775e7 (diff)
downloadgit-113f10f22f4b3b599e44e192e241e0bace9cc39e.zip
git-113f10f22f4b3b599e44e192e241e0bace9cc39e.tar.gz
git-113f10f22f4b3b599e44e192e241e0bace9cc39e.tar.bz2
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 'git.c')
-rw-r--r--git.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/git.c b/git.c
index 7604319..0c0483f 100644
--- a/git.c
+++ b/git.c
@@ -293,6 +293,7 @@ static void handle_internal_command(int argc, const char **argv)
{ "check-attr", cmd_check_attr, RUN_SETUP | NEED_WORK_TREE },
{ "cherry", cmd_cherry, RUN_SETUP },
{ "cherry-pick", cmd_cherry_pick, RUN_SETUP | NEED_WORK_TREE },
+ { "clean", cmd_clean, RUN_SETUP | NEED_WORK_TREE },
{ "commit-tree", cmd_commit_tree, RUN_SETUP },
{ "config", cmd_config },
{ "count-objects", cmd_count_objects, RUN_SETUP },