是否可以禁用Visual Studio Team System 2008中的自动合并选项? 如果这样怎么样?
我想禁用自动合并function,当检查一个文件到TFS,另一个开发人员已经工作,所以我总是需要手动合并。 有没有办法做到这一点?
尝试执行以下操作:
VS 2012 – >工具 – >选项 – >源代码pipe理 – > Visual Studio Team Fou … – >取消选中“尝试在生成时自动解决冲突”
Visual Studio 2008的简短答案似乎不是。
每当两个人改变了同一个文件,你就必须“合并”代码。 这可以采取三种forms:
- 保持你的版本(放弃他们的变化)
- 保留他们的版本(放弃您的更改)
- 合并两个更改以将它们混合在一起
你不能“把它关掉”,因为没有其他安全的方法来解决冲突。
最接近你可以合并closures是禁止多个签出(locking文件,以便一次只有一个开发人员可以在其上工作)。 这防止了两个并发的编辑发生,从而避免了完全合并的问题。 (如果开发人员经常被阻塞,并且无法在另一个开发人员locking的情况下处理文件,则需要额外付费)。 这是一个糟糕的,通常效率低下的工作方式 – 我不会推荐它。
您可以尽量减less合并的需要:
- 经常检查。 许多小的改变减less了你的合并冲突的风险,而一些大的改变增加了你的暴露。
- 将经常更改的大文件分割成许多较小的文件,以最大限度地减less2个开发人员需要同时处理相同文件的机会
- 在开始处理文件之前,请检查是否有其他人正在编辑它,并尝试重新组织您的“日程安排”,以便在另一个程序员正在编写该文件时不必开始编辑该文件(自我强制的“软锁“,只是减less合并的机会是必要的)
您也可以升级合并工具。 Visual Studio的合并是可怕的 ,难以使用,并且经常向代码中引入问题。 它已经咬了我很多次,我不能信任它,所以每次都必须做痛苦的手工合并。 我现在使用Araxis Merge,它总是完全自动合并,给了我信心,我可以让它为我做合并。 (我从来没有使用过另外一个合并程序,这让我很有信心,而且这些年来我已经尝试了几乎所有其他的select)。 当需要手动合并时,它提供了非常清晰的“阅读”合并视图,以及用于select如何合并每一位代码的非常快速和直观的用户界面,使其非常高效。 我曾经在VS复杂的合并中挣扎了三天(破坏了代码,直到我放弃了),然后我买了Araxis Merge,并在15分钟内重新完成了整个合并。 一个好的工具真的不需要合并。
(我不以任何方式隶属于Araxis,我不能忍受大部分可怕的合并工具)