比较Visual Studio中的两个文件
我在VS 2012中看到了新的比较工具,用于比较两个文件或两个版本的文件。 我喜欢。 但是,当我试图find它,我不能因为我不使用TFS。 有没有办法如何才能比较两个文件VS内buildfunction,但没有TFS?
您可以从命令提示符处调用devenv.exe /diff list1.txt list2.txt
,或者,如果Visual Studio实例已经在运行,则可以在命令窗口中键入Tools.DiffFiles
,并提供方便的文件名完成:
您可以尝试Visual Studio图库中的VSCommands扩展 。 最新版本允许您select两个文件并进行比较:
我一直是WinMerge的粉丝,这是一个开源项目。 你可以很容易地将它插入Visual Studio。
会告诉你如何做到这一点
还有一个名为CompareFiles的Visual Studio扩展,除了将“比较文件”条目添加到解决scheme资源pipe理器上下文菜单中外 ,没有其他任何操作。 它调用内置的Visual Studio diff工具。
以防万一有人(像我)不想安装一个像VSCommands一样的扩展…
如果你安装了VS,你也可以打电话
"%VS110COMNTOOLS%..\IDE\vsdiffmerge.exe" "File1" "File2"
或VS 2013
"%VS120COMNTOOLS%..\IDE\vsdiffmerge.exe" "File1" "File2"
资料来源: http : //roadtoalm.com/2013/10/22/use-visual-studio-as-your-diff-and-merging-tool-for-local-files/
在Visual Studio 2012,2013,2015中,您还可以使用Web Essentials进行操作 ,只需右键单击文件,然后从上下文菜单> Web Essential >> Diff Diff selected files:
编辑:它现在可作为一个单独的扩展
我也有这个问题。 没有TFS,但我发现这篇文章有帮助 。
具体来说,步骤1b。
打开Visual Studio命令提示符并导航到Common7 / IDE文件夹并键入
tf diff /configure
文件比较器VS扩展由Akhil米塔尔。 优秀的轻量级工具,完成工作。
受上述公认的答案的启发,我发现了一个非常舒适的方式,即如何通过使用拖放或通过“发送到”上下文菜单即时比较两个文件与Visual Studio。 它只需要一点点准备,你需要做一次,然后像瑞士军刀一样有用。
使用拖放进行文件比较
制备:
1.用你最喜欢的文本编辑器创build一个新的batch file。 键入以下内容:
@echo off setlocal set vspath=C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE start "Compare files" /B /MIN "%vspath%\devenv.exe" /diff %2 %1 First:'%2' Second:'%1'
您可能会注意到,我在批处理中反转了%1和%2参数,这是因为我注意到文件资源pipe理器先传递第二个文件,然后传递第一个文件。
-
将此代码保存为
VS_FileCompare.cmd
以使用它,如果需要匹配devenv.exe
的位置(取决于您当前使用的Visual Studio版本),请修改vspath
。 -
或者为
VS_FileCompare.cmd
创build一个名为“文件比较”的快捷方式 ,并将其放置在桌面上 (如下面的animation所示),因此可以将文件拖放到桌面上,或直接将batch file放在桌面上。 就这样!
用法:
- 通过Win + E打开Windows资源pipe理器
- 在资源pipe理器中select两个文件进行比较
-
拖放它们,如下面的animation所示:
-
几秒钟后(取决于Visual Studio的启动时间),结果将显示在Visual Studio中:
注意:如果Visual Studio已经打开,它不会有害。 在这种情况下,它只会在Visual Studio的运行实例中打开一个新窗口。 所以你可以比较多个文件对,但是请确保你一次只select了2个文件。
另一种方法:SendTo上下文菜单
以下是如何使用batch file的另一种方法。 它允许使用上下文菜单的“发送到”文件夹来比较文件。
制备:
- 将快捷方式放入发送到文件夹。 通过Win + E打开Windows资源pipe理器
- 通过input
shell:sendto
打开Send To文件夹到文件浏览器的地址栏中(如下所述)。 然后,将准备好的快捷方式放入此文件夹中。
用法:
- 通过Win + E打开Windows资源pipe理器
- 在资源pipe理器中select两个文件进行比较
- 假设该快捷方式名为“Compare2Files VS”,可以select这两个文件,右键单击并selectSend To – > VS_FileCompare来调用比较,如下所示:
- 几秒钟后(取决于Visual Studio的启动时间),结果将显示在Visual Studio中:
MSDN参考资料:
– 使用差异窗口
– Visual Studio的差异参数
我相信这是Visual Studio 2012更好的扩展之一,它被称为代码比较,可以在这里find。
在Visual Studio代码中,您可以:
- 转到
Explorer
- 右键单击要比较的第一个文件
- select
Select for compare
- 右键单击要比较的第二个文件
- select
Compare with '[NAME OF THE PREVIOUSLY SELECTED FILE]'
如果您正在使用TFS连接,然后右键单击您需要比较的文件(通过源代码pipe理资源pipe理器),并为您呈现一个类似于此的窗口 –
现在改变“Souce Path:”源文件的path,并通过VS比较工具进行比较。
同样,你可以比较文件夹也是一次比较文件夹的所有文件。