TFS回滚上一个变更集,该变更集的文件已被后一个变更集更改

时间:2017-09-01 14:17:41

标签: tfs rollback changeset

让我们说开发人员A更改了文件class.cs中的方法,测试了更改并签入。变更集合并到接受分支并部署到接受环境中但是用户尚未批准更改生产

稍后,开发人员B对另一个目的进行了另一次更改。此更改具有高优先级,已经部署为接受并由用户批准,但之前的更改无法进入生产,因为尚未批准。

这是什么方法? 回滚Dev A更改集的更改,然后Dev B应该重做他的工作? 以某种方式合并文件的两个版本,删除不需要的更改并进行新的签到? (如果可能的话)

1 个答案:

答案 0 :(得分:1)

这是功能切换的一个很好的用例。基本上,您可以通过标志打开/关闭每个新功能(这可以通过应用程序的数据库,通过配置文件驱动,或者您可以控制它)。这使您可以保持代码完全集成并继续发货,即使某个特定功能未获批准或未完成。

重要的是,一旦确定不需要再次禁用新功能,就可以清理功能切换,否则代码会变得很乱。

另一种可能性是维护一种更好地支持修补程序的分支策略。有大量关于支持服务/修补程序版本的各种分支策略的文档。

这样的事情可能就是你所需要的: release branching strategy 参考:https://www.visualstudio.com/en-us/articles/branching-strategies-with-tfvc