【问题标题】:Find Subversion commits referencing particular JIRA issue查找引用特定 JIRA 问题的 Subversion 提交
【发布时间】:2016-01-04 12:14:09
【问题描述】:

我们使用 Subversion 作为版本控制系统,使用 JIRA 作为我们项目的问题跟踪工具。在 SVN 中提交时(使用 TortoiseSVN 客户端),我们提供 JIRA 票证参考,因此它会根据该特定 JIRA 票证自动显示 JIRA 中提交的文件。

但是是否有任何 API 可用于查询查找针对特定 JIRA 票证提交的文件?

【问题讨论】:

    标签: svn jira


    【解决方案1】:

    不幸的是,没有直接的方法来搜索 Subversion 提交消息。

    如果这是您需要经常做的事情,那么我绝对建议您设置某种工具,在提交提交时对其进行索引并将交叉引用信息保存在数据库中(我们为此使用了trac )。我对 Jira 不熟悉,它可能有类似的东西可用。

    另一种选择是编写一个脚本来提取完整​​的存储库日志并对其进行解析以查找对特定票证的引用。大多数流行的脚本语言都有 Subversion 库绑定,这应该使这变得相当简单(拉日志并为每个修订,在提交消息中搜索与您的票证参考格式匹配的正则表达式,如果找到匹配项则打印出修订号)。随着您的存储库变得越来越大,这可能需要很长时间才能运行,因此我不推荐这种方法,除非这只是您需要做一两次的事情。

    【讨论】:

      【解决方案2】:

      我不知道为什么这个选项(通过 TortoiseSVN 客户端可用)对您没有帮助 > 在 repo 文件夹中右键单击 > TortoiseSVN > 显示日志。这应该会打开 repo 的所有提交历史记录,并且您应该能够在此处找到您的提交(针对您的 JIRA ID)。我使用这种方法来找出我在分支中的提交。这是你要找的吗??

      【讨论】:

        【解决方案3】:

        这通过将“svn log”命令的输出过滤为仅包含问题跟踪号加上足够的先前相邻行(-B 选项)以查看输出中的修订号的提交消息来工作。

        svn log -vl numCommitsToGoBack | grep -B numPreviousLines issueTrackingNumber

        grep a file, but show several surrounding lines?

        【讨论】:

          猜你喜欢
          • 2011-05-19
          • 1970-01-01
          • 1970-01-01
          • 2012-07-18
          • 2018-06-18
          • 1970-01-01
          • 2019-04-28
          • 2012-04-16
          相关资源
          最近更新 更多