                       head-tree (git-rev-parse "HEAD^{tree}")))
               (if files
                   (progn
+                    (message "Running git commit...")
                     (git-read-tree head-tree index-file)
                     (git-update-index nil files)         ;update both the default index
                     (git-update-index index-file files)  ;and the temporary one

Return the list of files that haven't been handled."
  (let (infolist)
    (with-temp-buffer
      (apply #'git-run-command t nil "ls-files" "-z" (append options (list "--") files))
      (goto-char (point-min))
      (while (re-search-forward "\\([^\0]*\\)\0" nil t 1)
        (let ((name (match-string 1)))

        (progn
          (dolist (name files)
            (when (file-exists-p name) (delete-file name)))
          (apply #'git-call-process-env nil nil "update-index" "--remove" "--" files)
          (git-update-status-files files nil)
          (git-success-message "Removed" files))
      (message "Aborting"))))

(defun git-revert-file ()
