diff options
author | Phillip Wood <phillip.wood@dunelm.org.uk> | 2023-07-05 22:49:27 +0300 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2023-07-06 00:00:28 +0300 |
commit | 498198453dbb8ae46becbc83a1ef0979a0eb805d (patch) | |
tree | 17d45570180ca97e0cbb1b9106efe2aeda6e1150 /t/t4053-diff-no-index.sh | |
parent | a9e066fa63149291a55f383cfa113d8bdbdaa6b3 (diff) |
diff --no-index: refuse to compare stdin to a directory
When the user runs
git diff --no-index file directory
we follow the behavior of POSIX diff and rewrite the arguments as
git diff --no-index file directory/file
Doing that when "file" is "-" (which means "read from stdin") does not
make sense so we should error out if the user asks us to compare "-" to
a directory. This matches the behavior of GNU diff and diff on *BSD.
Signed-off-by: Phillip Wood <phillip.wood@dunelm.org.uk>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 't/t4053-diff-no-index.sh')
-rwxr-xr-x | t/t4053-diff-no-index.sh | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/t/t4053-diff-no-index.sh b/t/t4053-diff-no-index.sh index 4e9fa0403d..5bfb282e98 100755 --- a/t/t4053-diff-no-index.sh +++ b/t/t4053-diff-no-index.sh @@ -205,4 +205,9 @@ test_expect_success POSIXPERM,SYMLINKS 'diff --no-index normalizes: mode not lik test_cmp expected actual ' +test_expect_success 'diff --no-index refuses to diff stdin and a directory' ' + test_must_fail git diff --no-index -- - a </dev/null 2>err && + grep "fatal: cannot compare stdin to a directory" err +' + test_done |