git-ls-files: Fix, document, and add test for --error-unmatch option.
Signed-off-by: Junio C Hamano <junkio@cox.net>
This commit is contained in:
parent
d0080b3cda
commit
c8af25ca01
@ -14,6 +14,7 @@ SYNOPSIS
|
|||||||
[-x <pattern>|--exclude=<pattern>]
|
[-x <pattern>|--exclude=<pattern>]
|
||||||
[-X <file>|--exclude-from=<file>]
|
[-X <file>|--exclude-from=<file>]
|
||||||
[--exclude-per-directory=<file>]
|
[--exclude-per-directory=<file>]
|
||||||
|
[--error-unmatch]
|
||||||
[--full-name] [--] [<file>]\*
|
[--full-name] [--] [<file>]\*
|
||||||
|
|
||||||
DESCRIPTION
|
DESCRIPTION
|
||||||
@ -72,6 +73,10 @@ OPTIONS
|
|||||||
read additional exclude patterns that apply only to the
|
read additional exclude patterns that apply only to the
|
||||||
directory and its subdirectories in <file>.
|
directory and its subdirectories in <file>.
|
||||||
|
|
||||||
|
--error-unmatch::
|
||||||
|
If any <file> does not appear in the index, treat this as an
|
||||||
|
error (return 1).
|
||||||
|
|
||||||
-t::
|
-t::
|
||||||
Identify the file status with the following tags (followed by
|
Identify the file status with the following tags (followed by
|
||||||
a space) at the start of each line:
|
a space) at the start of each line:
|
||||||
|
@ -758,6 +758,7 @@ int main(int argc, const char **argv)
|
|||||||
continue;
|
continue;
|
||||||
error("pathspec '%s' did not match any.",
|
error("pathspec '%s' did not match any.",
|
||||||
pathspec[num] + prefix_offset);
|
pathspec[num] + prefix_offset);
|
||||||
|
errors++;
|
||||||
}
|
}
|
||||||
return errors ? 1 : 0;
|
return errors ? 1 : 0;
|
||||||
}
|
}
|
||||||
|
27
t/t3020-ls-files-error-unmatch.sh
Executable file
27
t/t3020-ls-files-error-unmatch.sh
Executable file
@ -0,0 +1,27 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
#
|
||||||
|
# Copyright (c) 2006 Carl D. Worth
|
||||||
|
#
|
||||||
|
|
||||||
|
test_description='git-ls-files test for --error-unmatch option
|
||||||
|
|
||||||
|
This test runs git-ls-files --error-unmatch to ensure it correctly
|
||||||
|
returns an error when a non-existent path is provided on the command
|
||||||
|
line.
|
||||||
|
'
|
||||||
|
. ./test-lib.sh
|
||||||
|
|
||||||
|
touch foo bar
|
||||||
|
git-update-index --add foo bar
|
||||||
|
git-commit -m "add foo bar"
|
||||||
|
|
||||||
|
test_expect_failure \
|
||||||
|
'git-ls-files --error-unmatch should fail with unmatched path.' \
|
||||||
|
'git-ls-files --error-unmatch foo bar-does-not-match'
|
||||||
|
|
||||||
|
test_expect_success \
|
||||||
|
'git-ls-files --error-unmatch should succeed eith matched paths.' \
|
||||||
|
'git-ls-files --error-unmatch foo bar'
|
||||||
|
|
||||||
|
test_done
|
||||||
|
1
|
Loading…
Reference in New Issue
Block a user