4bfe1199ea
Recent '--' fixes to "git diff" by Linus made it possible to specify filenames that start with '-'. But in order to do that, you need to be able to add and commit such file to begin with. Teach git-add and git-commit to honor the same '--' convention. Signed-off-by: Junio C Hamano <junkio@cox.net>
37 lines
537 B
Bash
Executable File
37 lines
537 B
Bash
Executable File
#!/bin/sh
|
|
|
|
show_only=
|
|
verbose=
|
|
while : ; do
|
|
case "$1" in
|
|
-n)
|
|
show_only=true
|
|
;;
|
|
-v)
|
|
verbose=--verbose
|
|
;;
|
|
*)
|
|
break
|
|
;;
|
|
esac
|
|
shift
|
|
done
|
|
|
|
GIT_DIR=$(git-rev-parse --git-dir) || exit
|
|
|
|
if test -f "$GIT_DIR/info/exclude"
|
|
then
|
|
git-ls-files -z \
|
|
--exclude-from="$GIT_DIR/info/exclude" \
|
|
--others --exclude-per-directory=.gitignore -- "$@"
|
|
else
|
|
git-ls-files -z \
|
|
--others --exclude-per-directory=.gitignore -- "$@"
|
|
fi |
|
|
case "$show_only" in
|
|
true)
|
|
xargs -0 echo ;;
|
|
*)
|
|
git-update-index --add $verbose -z --stdin ;;
|
|
esac
|