[PATCH] git-merge-cache -q doesn't complain about failing merge program
[git.git] / git-commit-script
index 2632afd..dae487f 100755 (executable)
@@ -3,33 +3,33 @@
 # Copyright (c) 2005 Linus Torvalds
 #
 
+. git-sh-setup-script || die "Not a git archive"
+
 usage () {
-    echo 'git commit [-m existing-commit] [<path>...]'
-    exit 1
+       die 'git commit [-m existing-commit] [<path>...]'
 }
 
-: ${GIT_DIR=.git}
-if [ ! -d "$GIT_DIR" ]; then
-       echo Not a git directory 1>&2
-       exit 1
-fi
+files=()
 while case "$#" in 0) break ;; esac
 do
     case "$1" in
     -m) shift
         case "$#" in
        0) usage ;;
-       *) use_commit=`git-rev-parse "$1"` ||
+       *) use_commit=`git-rev-parse --verify "$1"` ||
           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