每个分支自动化git commit消息

时间:2011-06-14 00:19:02

标签: git bash

我一直发现自己忘了在我的提交中添加refs #ticket。这是一种痛苦。我通常每张票至少使用一个分支,或者至少,一张票可能有多个分支,但通常不是相反的。

所以我想要添加一个branch.ticket配置选项然后从可能的prepare-commit-msg中检索它并在我的消息中添加“refs#”。

在完成此操作后,甚至可以在创建新分支时添加钩子或别名来请求#ticket。

有人可以帮我构建这些吗?我在git上相当新,也不是bash guru,但如果指向正确的方向,我可以弄明白。

到现在为止,我收集我必须致电

git config --add branch.<branchname>.ticket <ticketnumber>

然后执行类似

的操作
prepend `git config branch<branchname>.ticket` $file

基本上。我认为。 有谁可以证实这一点?并告诉我如何获得&lt; branchname&gt;?

2 个答案:

答案 0 :(得分:2)

听起来不错。您可以使用git symbolic-ref HEAD获取当前分支名称(如果有)。

您可能想要切断/refs/heads/。我在我的提示脚本中使用它:

local branchname=$(timeout 1s git symbolic-ref HEAD 2> /dev/null | cut -b 12-)

然后检查是否为空字符串。

答案 1 :(得分:0)

我相信你走在正确的轨道上

有很多方法可以获得当前分支:

git branch | grep '^*' |sed s/\*\ //

或者使用git symbolic-ref HEAD并获取/

之后的最后一部分