TFS 代码审查 - 你能在本地运行某人的变更集来测试它是不是有效吗?

Posted

技术标签:

【中文标题】TFS 代码审查 - 你能在本地运行某人的变更集来测试它是不是有效吗?【英文标题】:TFS Code reviews - Can you run someones changeset locally to test that it works?TFS 代码审查 - 你能在本地运行某人的变更集来测试它是否有效吗? 【发布时间】:2018-10-12 18:34:59 【问题描述】:

我习惯于在将产品合并到主开发分支之前使用 Git 分支来开发产品功能。通常情况下,我会在其他开发人员提出拉取请求后立即查看他们的分支,以便我可以在查看他们的实际代码的同时测试他们的更改。

我最近加入了一个使用 TFS 和 Team Foundation 版本控制(所以不是 Git)的团队。我对发布和审查代码审查感到满意,但是有没有办法运行其他人的搁置集*?如果我们都在处理同一个文件,最好不要覆盖我自己的文件?

在一个人的代码审查中,我可以看到 Actions,而 ViewChangeset 可以查看签入的变更集。这有更多的操作可供选择。但是他们似乎都不允许在我的本地工作区中运行他们的更改。

*更新: 请参阅 Daniel Mann 对我需要的正确术语的回答,即:“更改集已分配给已提交的源代码,并将通过“获取最新”等同步。搁置集已暂停,正在进行中的工作。”

【问题讨论】:

【参考方案1】:

请注意,您使用了一些不正确的术语,这可能会在现在或将来导致混淆。 changeset 分配给已提交的源代码,并将通过“获取最新”等同步。 shelveset 已暂停,正在进行中的工作。

TFVC 代码审查是根据搁置集而不是变更集进行的。

澄清后: 您必须搁置或签入您的更改,然后取消搁置更改。

【讨论】:

Daniel 的回答很好,我会用你正确的术语更新我的问题。我认为 PatrickLu-MSFT 更接近我在这个上所需要的,所以我会给他打个绿勾。【参考方案2】:

它可以在本地运行某人的变更集进行测试,您只需要先由用户find their changeset,然后在本地拉下特定的变更集(建议您创建一个新的工作区来处理这些文件)。

TFVC 中的变更集对应于 Git 中的提交。 TFS 服务器源代码控制中已经有。

但是,代码审查发生在其他人签入他们的代码之前。建议你先在 TFVC 中go through the process of code review。就像 Daniel 所说,代码审查基于shelvesets。

其他人正在通过搁置集与您分享他们的待定更改(尚未签入)以供您查看。您可以unshelve his shelveset 将搁置的文件修订、签入说明、cmets 和工作项关联恢复到当前工作区。

如果你不希望搁置物搞乱你在 VS 中的本地工作,也请在这里看看我的回复:Undo TFS Unshelve

【讨论】:

嗨帕特里克。我现在使用了一些搁板来保存我自己正在进行的工作。代码审查的事情有点复杂,因为我是我团队中唯一的开发人员,除了一个每周来两次的承包商。因此,我倾向于在审核请求所在的日期提交审核请求,或者当我有一个特别复杂的、即将到来的变更集时,我需要关注它们。话虽如此,我相信你的回答是正确的,因为我已经看到了关于更多 SO 问题的检查搁置建议(尽管不是从 Git 的角度来看)。所以我会把它标记为正确的。谢谢。

以上是关于TFS 代码审查 - 你能在本地运行某人的变更集来测试它是不是有效吗?的主要内容,如果未能解决你的问题,请参考以下文章

如何检查TFS服务器上是否有新的更改?

使用TFS 2010在Visual Studio 2012中进行代码审查

将代码签入 TFS 后如何自动请求代码审查

VSTS中的强制性代码审查

代码审查工作流程+ TFS中的功能分支

在 TFS 2013 中启动回滚后,我可以恢复我最近的本地更改吗?