Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ionic-framework/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何将审查请求与TFS 2012中的多个变更集关联_Tfs_Tfs Code Review - Fatal编程技术网

如何将审查请求与TFS 2012中的多个变更集关联

如何将审查请求与TFS 2012中的多个变更集关联,tfs,tfs-code-review,Tfs,Tfs Code Review,我们的开发过程是这样的:每两周团队负责人(me)都会检查每个人的变更集,以确保它们符合编码标准。我希望使用TFS 2012来帮助实现此过程的自动化 这有两个问题: 无法提交未经请求的代码审查。我想,如果必要的话,我可以不用这个 无法将代码审阅与多个变更集关联。这是一个交易破坏者 我读过一篇文章,其中说可以在事后将变更集链接到工作项,当我打开工作项进行请求审阅时,我确实看到了链接选项卡。但是,当我单击“新建”或“链接到…”时,没有链接到变更集的选项。只有一个选项可以链接到流程中的每个工作项类型 有

我们的开发过程是这样的:每两周团队负责人(me)都会检查每个人的变更集,以确保它们符合编码标准。我希望使用TFS 2012来帮助实现此过程的自动化

这有两个问题:

  • 无法提交未经请求的代码审查。我想,如果必要的话,我可以不用这个

  • 无法将代码审阅与多个变更集关联。这是一个交易破坏者

  • 我读过一篇文章,其中说可以在事后将变更集链接到工作项,当我打开工作项进行请求审阅时,我确实看到了链接选项卡。但是,当我单击“新建”或“链接到…”时,没有链接到变更集的选项。只有一个选项可以链接到流程中的每个工作项类型

    有人知道怎么做吗?是否有计划将这些功能添加到TFS中

    以下是一个屏幕截图:

  • 不是主动提出的
  • 您可以在历史记录屏幕中右键单击更改集以请求签入后复查
  • 要想达到你想要的目标,还有一个棘手的解决办法。签出所有要审阅的文件并请求审阅。然后可以撤消签出,搁置集和审阅请求将保留

    或者,您可以转到“源代码管理”选项卡,在解决方案的根文件夹上执行全部签出,请求审阅,撤消签出并执行审阅

    至于将变更集链接到工作项,这可以在签入后完成。打开工作项,转到“链接”选项卡并单击“链接到…”下拉列表将有一个“变更集”选项。但我认为这种链接类型不适用于代码审查请求,因为它们使用搁置集而不是一组变更集作为代码审查的源

    我希望您可以使用TFSAPI生成一个搁置集,其中包含特定开发人员在给定时间范围内所做的所有更改,将这些更改放在搁置集上,并请求对此进行审查。但现有的功能不存在


    或者,您可以通过创建同名的新搁置集来编辑与审阅关联的搁置集。

    另一种方法:

    1) 在两周周期开始时,启动代码审查流程,并记下创建的工作项编号。只需请求您自己进行审查,一开始不需要更改代码

    2) 让所有开发人员将他们接下来2周的签入与该工作项相关联#

    3) 当您准备好执行审查时,只需打开工作项并查看变更集

    这应该可以满足您的需要。

    关于第2项,我有一个标准的解决方案,您可能希望将来自多个变更集的所有变更合并到一个搁置集中以供审查。我尝试了上面提到的签出方法并遇到了问题,部分原因是我的评论有25个左右的文件,签出后,如果我刷新,TFS会将它们从挂起的更改中删除,因为TFS认为没有更改

    首先,(假设您的更改已经签入,并且在多个更改集中),在磁盘路径上有一个包含最新文件的工作区,例如D:\latest

    创建一个新的“本地”工作区(称为“审阅”),将同一项目映射到稍微不同的路径(例如,D:\Review…)获取所有文件。转到该项目的历史记录,在最早的更改集之前,右键单击并选择“获取此版本”

    此时,请转到历史记录并回滚其他人在此期间可能已更改的任何更改集(如果有),您不想成为审阅的一部分,除非有人更改了公共文件。保留这些更改集

    使用beyond compare,将“D:\Latest…”与“D:\Review…”进行比较,将更改从最新复制到“Review”。进入常用文件,仅复制要审阅的行。beyond compare写出更改时,TFS将检测更改并将保存的文件放入“Review”工作区的挂起更改列表中。(这是本地工作区的一项功能。)

    此时,您只需将挂起的更改从“审阅”工作区搁置,并请求对该搁置集进行审阅。

    选项3

    [我在这里假设您试图与单个代码评审关联的变更集是连续的,例如20001:20010]

  • 我“回滚到特定的变更集”(在上面的示例中) 20001)。我在更改中检查它。代码现在是原始的 国家

  • 然后,我“回滚到特定的变更集”(在上面的示例中) 20010)并再次签入。代码现在处于最终状态

  • 最后,我要求对最新版本进行审查 比较最近的两次提交—我从 回滚


  • 作为奖励,您可以在历史记录页面中比较特定的更改集。您可以使用此比较来确保上述提交确实将代码还原为修订版20001和20010。

    1.Dang.2.我喜欢您关于签出整个树的建议,但不幸的是,它不起作用。Tfs抱怨它限制了2000个文件r审查请求。我们有将近7000个。:(我觉得微软只是不想让我使用这个功能…:(如果我按照您建议的方式执行,审阅者将看不到文件中发生了什么更改,也不知道他必须审阅哪些更改。@bitbonk他们总是可以与以前的版本进行比较。或者与最新版本进行比较,以查看要审阅的内容。@jessehouwing我想我必须记下审阅者应该比较每个fi的所有更改集编号le to(作为对请求中每个文件的注释),这远不是理想的做法。与其说是解决方案,不如说是一种变通办法:为了进行主动审查,我自己检查文件,编写一些建议的更改代码,并请求审查