假设我正在分支上,并且我运行git commit
。然后,我被带到提交消息提示,我可以在其中输入提交主题和消息。我正在寻找的是一种预先填充提交主题,同时仍然能够手动编写提交消息的方法。
这个问题与this one的不同之处在于,我希望填充提交主题,但仍希望得到提示,以输入提交消息,即在git bash中运行git commit -a
会产生以下结果:
编辑:不当使用githooks阻止了链接问题中的可接受答案。因此,问题并不明显,可以将其标记为重复。
我目前正在尝试使用分支名称预填充提交主题,但是将来我可能希望该文本成为其他名称。这样,一般的解决方案(不是专门针对分支名称)将是首选。
答案 0 :(得分:5)
通过.git/hooks/prepare-commit-msg
挂钩,您可以在输入提交消息提示之前准备提交消息。有了该钩子,您将收到提交消息作为第一个参数,并且可以例如回显到其中:
COMMIT_MSG_FILE=$1
branch=$(git rev-parse --symbolic --abbrev-ref HEAD)
echo "Committing into branch: $branch" > $1;
echo "" >> $1;
echo "Some initial commit message body." >> $1;
如果您只有一些预定义的文本,并且不需要任何逻辑(例如获取分支名称,则可以使用提交消息模板。这是一个普通的旧文本文件,即commit.template
配置指向。例如,如果您的文件是~/.gitmessage
:
$ git config commit.template ~/.gitmessage