撰写提交消息时在评论中显示 Git 作者

撰写提交消息时在评论中显示 Git 作者

当我运行的时候git commit,我最喜欢的编辑器启动并向我显示如下内容:

# Please enter the commit message for your changes. Lines starting
# with '#' will be ignored, and an empty message aborts the commit.
# On branch master
# Your branch is up-to-date with 'origin/master'.
#
# Changes to be committed:
# …

我从事过许多不同项目,工作环境也不同,因此拥有不同的 Git 身份。我不止一次因为忘记运行而不得不更改现有提交(或更糟的是,更改现有提交链)git config user.email

是否可以在提交消息的注释中显示当前身份,以便我在编写提交消息时看到它?这将有助于我更早地发现错误。

类似这样的做法就可以了:

# Author:
# jornane <[email protected]>

答案1

您没有指定正在使用的操作系统,但Linux您可以使用以下命令实现您想要的操作prepare-commit-msg

#!/usr/bin/env sh

# prepare-commit-msg: print author name and e-mail as a comment in a commit message
#                     automatically

# if amend, don't do anything
if ! [ -z $3 ] ;then
    exit
fi


author=$(git var GIT_AUTHOR_IDENT | grep -E -o ".*<.+>")

sed -i "1s/^/#$author \n/" $1

相关内容