X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=git-commit.sh;h=3d250ec853dad3ff7e714025026ca90f2c77e7bb;hb=3e9fabc85ef44fa0f275dd89738a2dacb7b6f5db;hp=5bdee54a46b5012d7d5623040cb4c0eab9d7c7ce;hpb=29504118f8528f658fd0bfc02d8d78d4c01dc2cc;p=git.git diff --git a/git-commit.sh b/git-commit.sh index 5bdee54a..3d250ec8 100755 --- a/git-commit.sh +++ b/git-commit.sh @@ -3,10 +3,10 @@ # Copyright (c) 2005 Linus Torvalds # -. git-sh-setup || die "Not a git archive" +. git-sh-setup usage () { - die 'git commit [-a] [-v | --no-verify] [-m ] [-F ] [(-C|-c) ] [...]' + die 'git commit [-a] [-s] [-v | --no-verify] [-m | -F | (-C|-c) ] [-e] [...]' } all= logfile= use_commit= no_edit= log_given= log_message= verify=t signoff= @@ -92,14 +92,17 @@ tt*) esac case "$all,$#" in -t,*) +t,0) git-diff-files --name-only -z | git-update-index --remove -z --stdin ;; +t,*) + die "Cannot use -a and explicit files at the same time." + ;; ,0) ;; *) - git-diff-files --name-only -z "$@" | + git-diff-files --name-only -z -- "$@" | git-update-index --remove -z --stdin ;; esac || exit 1 @@ -129,6 +132,9 @@ then elif test "$use_commit" != "" then git-cat-file commit "$use_commit" | sed -e '1,/^$/d' +elif test -f "$GIT_DIR/MERGE_HEAD" && test -f "$GIT_DIR/MERGE_MSG" +then + cat "$GIT_DIR/MERGE_MSG" fi | git-stripspace >"$GIT_DIR"/COMMIT_EDITMSG case "$signoff" in @@ -144,9 +150,6 @@ t) esac if [ -f "$GIT_DIR/MERGE_HEAD" ]; then - - test -f "$GIT_DIR/MERGE_MSG" && cat "$GIT_DIR/MERGE_MSG" - echo "#" echo "# It looks like your may be committing a MERGE." echo "# If this is not correct, please remove the file" @@ -184,7 +187,7 @@ then } ' set_author_env=`git-cat-file commit "$use_commit" | - sed -ne "$pick_author_script"` + LANG=C LC_ALL=C sed -ne "$pick_author_script"` eval "$set_author_env" export GIT_AUTHOR_NAME export GIT_AUTHOR_EMAIL