diff options
author | Carl Worth <cworth@cworth.org> | 2006-02-21 15:04:51 -0800 |
---|---|---|
committer | Junio C Hamano <junkio@cox.net> | 2006-02-22 17:10:42 -0800 |
commit | d4a1cab541be0c276b38285c8b33050ea411eacf (patch) | |
tree | fa392a19be606f1f90e0792d8407df3a4bf09969 /t/t3600-rm.sh | |
parent | 2cf3be1d31b322cf45640f3019a32d19a8a9b6f8 (diff) | |
download | git-d4a1cab541be0c276b38285c8b33050ea411eacf.tar.gz |
Add new git-rm command with documentation
This adds a git-rm command which provides convenience similar to
git-add, (and a bit more since it takes care of the rm as well if
given -f).
Like git-add, git-rm expands the given path names through
git-ls-files. This means it only acts on files listed in the
index. And it does act recursively on directories by default, (no -r
needed as in the case of rm itself). When it recurses, it does not
remove empty directories that are left behind.
Signed-off-by: Junio C Hamano <junkio@cox.net>
Diffstat (limited to 't/t3600-rm.sh')
-rwxr-xr-x | t/t3600-rm.sh | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/t/t3600-rm.sh b/t/t3600-rm.sh new file mode 100755 index 0000000000..841573210a --- /dev/null +++ b/t/t3600-rm.sh @@ -0,0 +1,42 @@ +#!/bin/sh +# +# Copyright (c) 2006 Carl D. Worth +# + +test_description='Test of the various options to git-rm.' + +. ./test-lib.sh + +# Setup some files to be removed +touch foo bar +git-add foo bar +# Need one to test -- +touch -- -q +git update-index --add -- -q +git-commit -m "add foo, bar, and -q" + +test_expect_success \ + 'Pre-check that foo is in index before git-rm foo' \ + 'git-ls-files --error-unmatch foo' + +test_expect_success \ + 'Test that git-rm foo succeeds' \ + 'git-rm foo' + +test_expect_failure \ + 'Post-check that foo is not in index after git-rm foo' \ + 'git-ls-files --error-unmatch foo' + +test_expect_success \ + 'Test that "git-rm -f bar" works' \ + 'git-rm -f bar' + +test_expect_failure \ + 'Post-check that bar no longer exists' \ + '[ -f bar ]' + +test_expect_success \ + 'Test that "git-rm -- -q" works to delete a file named -q' \ + 'git-rm -- -q' + +test_done |