Re: git-commit: allow From: line to be entered in commit message
flat view
From: sean <hidden>
Date: 2016-06-15 22:42:16
Subsystem:
the rest · Maintainer:
Linus Torvalds
On Thu, 12 Jan 2006 09:37:00 -0500 sean [off-list ref] wrote:
Mostly just for comment to see if there is any support for this feature....
Sorry. Slightly better version of the patch below: --- Use the author name and email information given as the first line of the commit message in the form of: From: name <email> as the author's name and email address in the resulting commit object. This makes committing foreign patches a little less cumbersome to handle for some workflows.
diff --git a/git-commit.sh b/git-commit.sh
index 193feeb..163e2d7 100755
--- a/git-commit.sh
+++ b/git-commit.sh@@ -219,14 +219,19 @@ t) fi esac -grep -v '^#' < "$GIT_DIR"/COMMIT_EDITMSG | -git-stripspace > "$GIT_DIR"/COMMIT_MSG +grep -v '^#' < "$GIT_DIR"/COMMIT_EDITMSG | git-stripspace | +sed -e '1s/^[ \t]*from:.*//I' | git-stripspace > "$GIT_DIR"/COMMIT_MSG if cnt=`grep -v -i '^Signed-off-by' "$GIT_DIR"/COMMIT_MSG | git-stripspace | wc -l` && test 0 -lt $cnt then + FROM=$(sed -ne '/^#/d;/^[ \t]*$/d;s/from:[ \t]*\(.*\)/\1/Ip;q' "$GIT_DIR"/COMMIT_EDITMSG) + if test -n "$FROM"; then + export GIT_AUTHOR_NAME=$(echo "$FROM" | sed -e 's/[ \t]*<.*//') + export GIT_AUTHOR_EMAIL=$(echo "$FROM" | sed -e 's/.*<\(.*\)>.*/\1/') + fi tree=$(git-write-tree) && commit=$(cat "$GIT_DIR"/COMMIT_MSG | git-commit-tree $tree $PARENTS) && git-update-ref HEAD $commit $current &&