Visual Source Safe(TFS之前)中的比较工具具有一个方便的复选框,可以选择“忽略空白”。
现在,我们将TFS与Visual Studio 2010一起使用,并且“比较”对话框不再具有此选项。(来自Microsoft的荒谬监督!)
因此,有可能以某种方式解决此问题吗?
Visual Source Safe(TFS之前)中的比较工具具有一个方便的复选框,可以选择“忽略空白”。
现在,我们将TFS与Visual Studio 2010一起使用,并且“比较”对话框不再具有此选项。(来自Microsoft的荒谬监督!)
因此,有可能以某种方式解决此问题吗?
If
与您的If
区块重叠的另一个区块。如果忽略空格,将获得“安全”合并(4个单行更改),否则,将出现手动修复的冲突(2个重叠的块)。最糟糕的是-如果是前者,则该代码仍将编译(现在是嵌套的If
),因此,显而易见,损坏的合并会弄乱您的两个更改。
Answers:
这是一种变通方法,似乎可以解决此问题。
在Visual Studio中,选择“工具” /“选项” /“源代码控制” /“ Visual Studio Team Foundation System”,然后单击“配置用户工具”按钮。
在对话框中,添加具有以下设置的项目。
根据您的Visual Studio版本和安装路径(x64 / x86),命令选项可能为...
VS2010: C:\ Program Files (x86) \ Microsoft Visual Studio 10.0 \ Common7 \ IDE \ diffmerge.exe
VS2012: C:\ Program Files (x86) \ Microsoft Visual Studio 11.0 \ Common7 \ IDE \ diffmerge.exe
VS2013: C: \ Program Files (x86) \ Microsoft Visual Studio 12.0 \ Common7 \ IDE \ vsDiffMerge.exe
VS2015: C:\ Program Files (x86) \ Microsoft Visual Studio 14.0 \ Common7 \ IDE \ vsDiffMerge.exe
VS2017: C:\ Program Files ( x86) \ Microsoft Visual Studio \ 2017 \ Enterprise \ Common7 \ IDE \ CommonExtensions \ Microsoft \ TeamFoundation \ Team Explorer \ vsDiffMerge.exe
在参数选项中,保留与VS建议的参数数量相同的参数,最后只添加/ ignorespace。例如,在VS2015中,它将是:
%1 %2 /ignorespace
C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\vsDiffMerge.exe
在VS13中
Visual Studio 2017工具栏上有一个“ =”按钮,可帮助您根据需要比较文件。希望此屏幕截图对您有所帮助。
Visual Studio中的默认diff工具非常烦人。我建议您使用其他方法。WinMerge是我的最爱。它还有一个忽略空格的选项(菜单“编辑” ->“选项” ->“比较” ->“忽略所有”(在顶部的“空白”组框下)。
在VS2015中,将单击一个小图标与该=
符号进行比较时,可以“忽略空白” 。
转到“查看/工具栏/比较文件”。在工具栏中,单击“忽略修剪空白”。
2020年更新:我们在使用VS比较工具和Tortoise SVN一个方面解决了很多冲突,因此经过研究,我们决定安装与VS2015 / 2017/2019,SVN(Tortoise和Ankh)集成的Devart Code Compare(免费版) ,TFS,Mercurial,GIT等以及Windows资源管理器,因此不同比较工具之间不再存在噩梦/困惑。试试看,它非常有用。它还具有Merge来解决冲突和Folder diff,这在SVN由于某些原因不合并时非常有用。另外,我非常喜欢单击左/右箭头以复制更改。
VS图像下面是来自Devart网站的图像,但在我的情况下,我设置了“代码比较”以在VS而不是嵌入式环境下打开它,我认为它的性能更好。在VS中Options > Source Control > Subversion Environment
,我有这个:
asdf(qwerty)
被标记为不同于asdf ( qwerty )