Azure DevOps - 通过命令行将 git 提交或分支链接到工作项

Posted

技术标签:

【中文标题】Azure DevOps - 通过命令行将 git 提交或分支链接到工作项【英文标题】:AzureDevOps - Link git commit or branch to work item via command line 【发布时间】:2019-07-01 19:32:10 【问题描述】:

我曾参与过与 Jira 集成的项目,我只需在提交或分支名称中包含工单编号,该工作将自动与 Jira 中的工单链接。执行:

git commit -am '123 some commit'

在票证上,您会看到提交的链接。

如何使用 Azure Dev Ops 做到这一点?

我知道如何通过 Visual Studio 或票证本身手动执行此操作,但我只想通过命令行执行此操作。

【问题讨论】:

【参考方案1】:

您可以通过在井号后指定工作项 ID 将 Azure Boards 中的工作项链接到 Azure Repos 中的提交。例如,要更新工作项#3,您需要在提交消息中提及#3。 (井号 - # 是必需的,它不会解析裸数字并尝试链接工作项。)

例如:

git commit -m"Update bug #3"

在提交和工作项之间产生双向链接。您可以在提交详细信息中的工作项选项卡中看到这一点:

您可以在“开发”部分的工作项详细信息中看到这一点:

【讨论】:

正确 - 工作项类型是什么并不重要。 是否可以用分支来做到这一点?我刚刚尝试了git checkout -b '#123-tes't 并将其重命名为123-test(删除了哈希)。 不,不幸的是(?)Azure Repos 仅解析工作项“提及”的提交消息,它不检查分支名称。不过这个想法很有趣,我会和团队讨论一下。 @EdwardThomson 我们的团队依靠问题 id 作为分支前缀来确保 sprint 通道始终是最新的,尤其是当开发人员太兴奋而无法编写更多代码并且忘记单击右侧时提交消息中的按钮或参考问题 :) 您是否有 UserVoice 链接或类似链接可用于按照 JDillon522 的要求跟踪此特定功能请求? 当我将#ID 添加到我的提交时,我也没有得到任何链接【参考方案2】:

对于那些想知道为什么他们的提交没有自动链接到他们的某些存储库的工作项的人 - 这是您可以为每个存储库打开的功能:

在项目设置中 |存储库导航到非自动链接的存储库,然后在设置下启用“提交提及链接”(可能还有“提交提及工作项解析”):

您可能会发现 Forks 默认禁用此功能,而对于全新的存储库默认启用此功能。

无法自动将分支链接到工作项;除非您直接从工作项创建分支,使用“新建分支”按钮或“创建分支”链接:

注意:此链接仅在工作项上没有其他开发链接时存在 - 您必须使用“添加链接”之后的对话框。

该功能有一张公开票:https://developercommunity.visualstudio.com/t/automatically-link-a-work-item-to-branches-when-co/809745

【讨论】:

以上是关于Azure DevOps - 通过命令行将 git 提交或分支链接到工作项的主要内容,如果未能解决你的问题,请参考以下文章

Azure DevOps Server:还原被删除的分支

Azure DevOps Server:还原被删除的分支

Git 无法在 Azure DevOps 中创建标记

将构建工件发布到远程 Git 存储库 - Azure DevOps

如何将 TFVC 项目从 Azure DevOps 服务器迁移到新的 Azure DevOps 帐户作为 Git 存储库

从Azure DevOps的Git库中下载指定文件