繁体   English   中英

如何修复我的 git 环境中的 pre-commit-msg?

[英]How to fix the pre-commit-msg in my git environment?

有人经历过 .git/hooks/pre-commit-msg 的奇怪行为吗? 该文件具有适当的执行权限。 实际上它被执行了。 问题是提交,任何带有正确或不正确消息的提交,都会使执行进入错误状态。 总是。

正确的消息应该类似于以下示例:

  • “ABC-123/票任务等等”
  • “ABC-234/ticket-task 修复了一些东西”
  • “ABC-123/ticket-task 添加了一些”

其中 [test]、[fix] 或 [feat] 之后的第一个词是在一组之间选择的(如添加、固定、升级......)

使用 git 和 zsh shell 在 OSX 上工作。

#!/bin/bash
#

commit_message=$(cat .git/COMMIT_EDITMSG)
commit_error="Error in the commit message. Prefix with 
JIRA ticket. For example UXD-1234/git-hook"


if [[ ! $commit_message =~ /([A-Z]+[-][\d]+\/\S+)/  ]]; then
  echo >&2 $commit_error
  exit 1
fi

这段代码有错误吗?

提前致谢

所以这是正确答案

^[A-Z]+-[0-9]+/[a-zA-Z]

感谢@jonrsharpe

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM