66

我注意到在 BitBucket 中,当你的提交日志包含一个类似#12这个数字的数字时,它与错误号 12 相关联。

我发现这个功能很有趣,我想知道是否有任何关键字可以让我从提交日志中将问题标记为已解决,而不是每次都转到 Web 界面。

如果 BitBucket 不这样做,你能指出一个可以做到的系统吗?

4

4 回答 4

102

Bitbucket 已经支持使用问题服务在提交时标记问题。

问题服务扫描提交消息中的命令,这些命令将自动更改跟踪器上相关问题的状态。

[剪辑]

例子:

“... 修复 #4711 ...” # 将问题标记为已解决
“...重新打开错误 4711 ...” # 将问题标记为打开
“... refs ticket 4711 ...” # 将变更集链接到问题作为评论
"... refs bug #4711 和 #4712..." # 链接到多个问题

您可能需要激活它,这样做:

管理员可以在每个存储库的基础上激活服务。转到您的存储库页面,选择“管理”选项卡,单击“服务”,然后从列表中选择一个服务并添加它。

于 2010-01-16T04:56:12.930 回答
8

Redmine 有可配置的选项。最常用的是:

  • Refs #XXX / See #XXX -- 引用一个问题
  • Closes #XXX / Fixes #XXX - 将问题标记为已解决/已关闭
于 2010-01-15T23:58:52.023 回答
3

当然,Trac 也这样做。它很容易配置:

   _supported_cmds = {
                       'closed':     '_cmdClose',
                       'fix':        '_cmdClose',
                       'addresses':  '_cmdRefs',
                       're':         '_cmdRefs',
于 2010-11-30T14:40:05.257 回答
2

Google Code Project Hosting 也支持它:

http://code.google.com/p/support/wiki/IssueTracker#Integration_with_version_control

有提交日志命令:

  1. 轻松将问题的状态设置为已修复。
  2. 更新问题的任何方面,并添加评论。
  3. 输入一个新问题。
  4. 请求代码审查。

    (Fixes issue NNN)    Enclose command in parentheses
    Fixes issue NNN.     Full sentence in your log message description
    Fixes issue NNN  On a line by itself
    

Fixes 这个词可以用 Closes 或 Resolves 代替。问题编号可以有一个前导的井号 (#),也可以没有。

其他提交日志命令使用更强大的多行“长格式”语法。

COMMAND-LINE
ISSUE-FIELD-UPDATE*
COMMENT-TEXT...

其中 COMMAND-LINE 是以下之一:

Update issue NNN
New issue
New review

可以有任意数量的 ISSUE-FIELD-UPDATE 行。这些行可以是以下之一:

Summary: NEW-VALUE
Status: NEW-VALUE
Owner: NEW-VALUE
Cc: PLUS-MINUS-LIST
Labels: PLUS-MINUS-LIST
于 2010-01-17T19:51:50.477 回答