This replaces
git-diff-files --name-only | xargs git-update-cache
git commit
with a new "--all" argument to "git commit".
die 'git commit [-m existing-commit] [<path>...]'
}
+files=()
while case "$#" in 0) break ;; esac
do
case "$1" in
exit ;;
esac
;;
+ --all)
+ files=($(git-diff-files --name-only))\
+ ;;
*) break
;;
esac
shift
done
-git-update-cache -q --refresh -- "$@" || exit 1
+git-update-cache -q --refresh -- "$@" "${files[@]}" || exit 1
PARENTS="-p HEAD"
if [ ! -r "$GIT_DIR/HEAD" ]; then
if [ -z "$(git-ls-files)" ]; then