diff options
author | Pauli Virtanen <pav@iki.fi> | 2009-10-10 18:51:45 +0300 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2009-10-10 14:56:13 -0700 |
commit | b145b211baa4129a827cc1b1b1a7984523b8f903 (patch) | |
tree | a8c0f81923c408dc247f42c96e254cf4a6f34649 | |
parent | ac78b009398f8cab1f57d1ef62db21ac95e11ed1 (diff) | |
download | git-b145b211baa4129a827cc1b1b1a7984523b8f903.tar.gz git-b145b211baa4129a827cc1b1b1a7984523b8f903.tar.xz |
git-add--interactive: never skip files included in index
Make "git add -p" to not skip files that are in index even if they are
excluded (by .gitignore etc.). This fixes the contradictory behavior
that "git status" and "git commit -a" listed such files as modified, but
"git add -p FILENAME" ignored them.
Signed-off-by: Pauli Virtanen <pav@iki.fi>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rwxr-xr-x | git-add--interactive.perl | 2 | ||||
-rwxr-xr-x | t/t3701-add-interactive.sh | 14 |
2 files changed, 15 insertions, 1 deletions
diff --git a/git-add--interactive.perl b/git-add--interactive.perl index 06f70602c..3e90d716f 100755 --- a/git-add--interactive.perl +++ b/git-add--interactive.perl @@ -186,7 +186,7 @@ sub list_modified { @tracked = map { chomp $_; unquote_path($_); - } run_cmd_pipe(qw(git ls-files --exclude-standard --), @ARGV); + } run_cmd_pipe(qw(git ls-files --), @ARGV); return if (!@tracked); } diff --git a/t/t3701-add-interactive.sh b/t/t3701-add-interactive.sh index 62fd65e18..687bd7ab5 100755 --- a/t/t3701-add-interactive.sh +++ b/t/t3701-add-interactive.sh @@ -138,6 +138,20 @@ test_expect_success 'real edit works' ' test_cmp expected output ' +test_expect_success 'skip files similarly as commit -a' ' + git reset && + echo file >.gitignore && + echo changed >file && + echo y | git add -p file && + git diff >output && + git reset && + git commit -am commit && + git diff >expected && + test_cmp expected output && + git reset --hard HEAD^ +' +rm -f .gitignore + if test "$(git config --bool core.filemode)" = false then say 'skipping filemode tests (filesystem does not properly support modes)' |