如何在签入时禁用任务的自动完成状态

时间:2012-09-04 12:57:39

标签: visual-studio-2012 tfs tfs2012

我们刚刚开始使用TFS 2012,这似乎是2008年VS2012可用性方面的巨大升级。

然而,"我的工作"有一个非常讨厌的功能。功能,如果您将您的工作与某项任务连接起来。将任务与工作项连接后,对任何分支的任何签入都会将任务标记为“完成”#34;状态。我怎么能禁用它?我想拥有开发分支,以便我可以在开发期间进行小型提交,但是如果我这样做,我就无法将任务与我当前的工作联系起来。执行此操作(我知道)的唯一方法是在将所有小提交从我的个人分支合并到master之前选择当前工作的任务。是的,这是可行的,但它不像工作流程那样好。

使用scrum模板中的任务板功能在工作完成后将任务移动到完成工作流程的任何微不足道的常见部分。自动完成移动是非常烦人的自动化,不应该存在。

所以我的问题是:如何禁用此功能?此功能是模板的一部分还是与TFS工作项管理更深入的集成?

我们正在使用Microsoft的Scrum 2.0模板。

3 个答案:

答案 0 :(得分:73)

当您处于Pending Changes面板中并准备检入修复程序并将工作项与变更集关联时,您应该将“Resolve”更改为“Associate”(或者Scrum中的内容)。

Pending Changes


要使这个默认更复杂。

您需要edit the Work Item Template definition了解您正在使用的工作项类型(错误,任务等)。

一个选项是完全删除“Resolve”选项,您可以按以下方式执行此操作:

打开工作项类型的XML(如果您愿意,可以打开Power Toys中的GUI): 查找并删除:

  • <ACTION> <ACTION value="Microsoft.VSTS.Actions.Checkin" /> </ACTION>
模板中的

部分 - 它将在<TRANSITIONS>中针对2个州之间的特定转换。

这样做意味着TFS永远不会将您的工作项转换为签到的一部分,您每次都必须这样做。

另一个选项是添加一个没有Checkin操作的新工作项“State”(例如“Under Development”)。然后,您可以将工作项转换为此状态,然后在检查它们之前返回“已分配”(或其他),并“解析”它们。

Professional Team Foundation Server 2010 book from Wrox将有助于WIT编辑。

可能有更多方法可以做到这一点,这完全取决于您所在的团队和环境:)。


还有另一种方法to do this仅影响您的客户端计算机

要使“关联”默认操作(而不是“解决”),请设置注册表项

HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\12.0\TeamFoundation\SourceControl\Behavior\ResolveAsDefaultCheckinActionFalse

NB 12.0(针对VS2013)替换为VS2015为14.0,VS 2012为11.0,VS 2010为10.0

答案 1 :(得分:33)

现在您可以升级到VS2015(如果已经没有这样做)并取消选中new checkbox工具&gt;选项&gt;源控制&gt; Visual Studio Team Foundation&gt; “在办理登机手续时解决相关工作项目”。之后,“Associate”成为默认选项,您无需在提交时手动更改

答案 2 :(得分:0)

在Visual Studio 2015中,这可以通过在“选项”菜单中取消选中“在签入时解析关联的工作项”来完成。

Tools > Options > Source Control > Visual Studio Team Foundation Server

Visual Studio Screenshot

编辑:错别字