我们使用 Bitbucket Server 和 Jira 进行 git 开发。它们通过 Bitbucket 中的
Application Links
设置进行连接。
我们尝试使用 Control Freak 插件强制执行“正确”的提交消息(推送时)。 这工作正常,但我们最近偶然发现了一个极端情况,我想了解 Bitbucket 本身是否有任何选项来解析 Jira 问题的提交消息。
事情是这样的:Control Freak 工具有一个选项,告诉它是否在“提交消息的第一行”或“提交消息中的任何位置”中“查找 Jira 引用”。 这很好,我可以想象检查者方面的不同用例:一个团队可能更喜欢检查整个消息,另一个团队可能更喜欢整个提交消息。
但是,据我所知 - 这确实是这里的问题 - Bitbucket++Jira 将始终检查 Jira 问题链接的整个提交消息。 也就是说,假设您有这样的提交消息:
MYJRA-1234 : Fix the checker issue with multiline messages
This fixes the rollout of the setting for
"Look..: Anywhere in commit message" that we rolled out back alongside MYJRA-42
and didn't notice that we checked too little on push.
通过此消息,Bitbucket++Jira将
将提交与both问题 1234 和 42 链接,在 Web 界面的问题列中显示这两个问题,或者当您通过 Bitbucket API 查询提交的问题时。 现在,对于我们来说,这有点次优,因为第二个问题根本不适用于此提交:所以在我们的例子中,最有意义的是
Bitbucket只在第一个提交行,从而使开发人员能够在提交详细信息中提及远程相关的问题键,而无需将这些问题链接到提交。
TL;DR- 那么,Bitbucket 或 Jira 中是否有任何选项可以告诉系统我只关心提交消息第一行中的 Jira 键? 再次注意:我们当前的设置是使用 Bitbucket-Server 和 Jira-Server,但如果有任何答案。我也感兴趣的云或数据中心产品。
请注意,我在这里提供了 Control Freak 的描述作为背景信息。我知道 Bitbucket Cloud 还可以检查/拒绝推送时问题密钥的提交消息。这个问题不是关于事情的检查器方面,而是关于提交位于 Bitbucket 方面后的“链接”方面。
([A-Z][A-Z]+)
,后跟连字符和问题编号,用于 例如
)。 所以这里提到了正常的规则,以及改变规则的方法(TEST-123
integration.jira.key.pattern
)。
因为他们为小写字母提供的示例正则表达式相当高级:(?<=^|[a-z]-|[\s\p{Punct}&&[^-]])([a-z]{1,10}-\d+)(?![^\W_])
并且在测试时也仅
匹配行开头的键(根据我的正则表达式测试器 - 我没有要测试的数据中心 v9 版本) (!) => Atlassian 似乎有:
改进了配置用户界面