gpt4 book ai didi

git - 确保 github PR squash merge 提交评论包含问题 ID

转载 作者:太空狗 更新时间:2023-10-29 13:52:32 28 4
gpt4 key购买 nike

如何确保来自 github PR squash merge 的提交评论包含所需的文本?

我们使用 Jira + Github,如果用户在提交评论中输入 Jira 问题 ID,那么这些提交就会链接到 Jira 问题。

当用户从他们的私有(private)功能分支 merge PR 时,他们通常会压缩和 merge ,这意味着用户可以手动总结从该分支到更大的集成分支或主分支的单个提交的意图。

如果用户在 merge PR 时忘记输入它们,编辑提交并将文本添加到消息中会变得很痛苦。

我可以在 PR 上使用状态检查或提交消息格式化程序来确保必须有看起来像 Jira ID 的东西吗? (AAA-111)

最佳答案

解决此问题的另一种方法*是确保提交消息包含分支名称,这在 JIRA 中很可能源自问题标题。

为了实现这一点,同事必须在他们的 .git/hooks 目录中包含一个名为 commit-msg 的文件,其内容如下:

#!/bin/bash
current_branch="$(git rev-parse --abbrev-ref HEAD)"
tmp=$(mktemp) || exit
echo "$current_branch $(cat "$1")" > "$tmp"
mv "$tmp" "$1"

然后当有人在功能分支上提交 ABC-1234-customers-cant-log-in 时,提交命令如下:

git commit -m "Awesome changes"

...实际上会产生以下提交信息:

ABC-1234-customers-cant-log-in Awesome changes

...然后 JIRA 将自动检测它并将提交链接到问题,从而确保在 JIRA 问题页面上可靠地回顾提交。

我们已经在我的团队中实现了这项政策,它有几个优点:

  • 不再忘记提交消息中的 JIRA 问题编号
  • 争取时间
  • 在需要时更容易解析提交消息

(作为旁注,以防万一,也可以根据需要使用 git commit -n 停用此自动行为)

* (请注意,这两个解决方案并不相互排斥。事实上,您很可能需要两者,Adil's 用于远程 repo 完整性,而这个用于本地使用效率)

关于git - 确保 github PR squash merge 提交评论包含问题 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55006426/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com