After you deleted files from your working tree, automatic
git-update-cache used when the "--all" flag is given to "git
commit" barfs because it lacks the --remove flag.
It can be argued that this is a feature; people should be
careful and something with a grave consequence like removing
files should be done manually, in which case the current
behaviour may be OK.
The patch is for people who thinks the user who uses the "--all"
flag deserves the danger that comes with the convenience.
Comments?
Signed-off-by: Junio C Hamano <junkio@cox.net>
case "$all,$#" in
t,*)
git-diff-files --name-only -z |
- xargs -0 git-update-cache -q --
+ xargs -0 git-update-cache -q --remove --
;;
,0)
;;
*)
git-diff-files --name-only -z "$@" |
- xargs -0 git-update-cache -q --
+ xargs -0 git-update-cache -q --remove --
;;
esac || exit 1
git-update-cache -q --refresh || exit 1