【发布时间】:2011-09-09 16:56:13
【问题描述】:
Visual Source Safe(TFS 之前)中的比较工具有一个方便的复选框来选择“忽略空白”。
现在我们在 Visual Studio 2010 中使用 TFS,比较对话框不再有此选项。 (来自微软的荒谬疏忽!)
那么,有没有办法解决这个问题?
【问题讨论】:
-
您应该非常小心使用此选项,因为 TFS 合并工具无法区分代码中的空白和字符串文字中的空白。更好的解决方案是让整个团队对代码中的空白使用相同的标准。
-
@Keith:字面上的问题很容易知道 - 我没有注意到这一点。然而,团队标准并不总是问题。如果我将一段代码包装在一个条件中,它会自动缩进,导致每一行前面都有空格。我真的只想看到突出显示为更改的 If/End 语句,而不是两者之间的整个块。
-
我想要相反的 - 块中的所有内容都突出显示。更重要的是,这不仅会影响 UI 突出显示,还会改变工具实际进行合并的方式。假设您与某人的更改合并 - 另一个与您的
If块重叠的If块。如果您忽略空格,您将获得“安全”合并(4 个单行更改),而如果您不这样做,您将获得手动修复的冲突(2 个重叠块)。最糟糕的是——如果是前者,那么该代码仍然可以编译(它现在是一个嵌套的If),因此损坏的合并已经搞砸了你的两个更改,这并不明显。 -
我在 2012 年,无法弄清楚如何让它工作(diffmerge 不存在,我认为他们正在使用新工具)。切换到 WinMerge,但如果有人能够选择使用新的和改进的 2012 年工具,我会很感兴趣