美文网首页Git使用Git我用 Linux
git hook commit 自动关联到对应的issue

git hook commit 自动关联到对应的issue

作者: freelands | 来源:发表于2017-12-07 22:42 被阅读33次
hook.png
在我们用git进行版本控制的时候 很多时候都是围绕着issue开发,每次git的提交都关联上issue对于我们后期的排查有很大的帮助,但是每次commit 的时候都关联下issue难免有点烦躁,所以我们今天可以通过在本地配置一下来实现每次commit 自动关联对应的issue。
  • 在项目的.git/hooks目录下创建一个prepare-commit-msg文件

    image.png
  • copy下面的脚本到上面创建的prepare-commit-msg文件里

#!/bin/sh
NAME=$(git branch | grep '*' | grep -Eo "#\d+")
DESCRIPTION=$(git config branch."$NAME".description)
echo "$NAME"': '$(cat "$1") > "$1"
if [ -n "$DESCRIPTION" ]
then
   echo "" >> "$1"
   echo $DESCRIPTION >> "$1"
fi
  • 因为commit 的时候会执行上面那个脚本所以要给这个脚本添加可执行权限
chmod u+x prepare-commit-msg
  • 验证


    image.png
  • 查看真实的提交日志


    image.png

可以看出我们提交的内容是heiqie test,但是实际提交到git 里的commit内容是
#2: heiqie test, push 到远程分支,就可以在对应的issue上看到提交点了

  • 不足
    这种方式配置需要分支上有issue号比如 issue#223

相关文章

网友评论

    本文标题:git hook commit 自动关联到对应的issue

    本文链接:https://www.haomeiwen.com/subject/fifsixtx.html