Visual Studio 2012で、2つのファイルまたは2つのバージョンのファイルを比較するための新しい比較ツールを見ました。それはいいですね。しかし、 TFSを使用していないため、見つけようとしても見つかりませんでした。
Visual Studioの組み込み機能を使用して(ただしTFSを使用せずに)2つのファイルを比較する方法はありますか?
Visual Studio 2012で、2つのファイルまたは2つのバージョンのファイルを比較するための新しい比較ツールを見ました。それはいいですね。しかし、 TFSを使用していないため、見つけようとしても見つかりませんでした。
Visual Studioの組み込み機能を使用して(ただしTFSを使用せずに)2つのファイルを比較する方法はありますか?
Visual Studio Developerコマンドプロンプトから呼び出すことができますdevenv.exe /diff list1.txt list2.txt
。または、Visual Studioインスタンスが既に実行されている場合はTools.DiffFiles
、コマンドウィンドウに、便利なファイル名を入力して入力できます。
上記のVladimirReshetnikovの回答に触発されて、ドラッグアンドドロップまたは[送信]コンテキストメニューを使用して、2つのファイルをVisualStudioと即座に比較する非常に快適な方法を見つけました。それはあなたが一度する必要がある少しの準備を必要とするだけで、それからそれはスイスのアーミーナイフのように役に立ちます。
Visual Studioにはすでに必要なものがすべて揃っており、これを機能させるために必要な構成手順は次のとおりです。
準備:
お気に入りのテキストエディタを使用して、新しいバッチファイルを作成します。次のように入力します。
@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番目のファイルを最初のパラメーターとして渡し、次に最初のファイル%2
を2番目のパラメーターとして渡すことに気付いたためです。
このコードを使用するために保存し、必要に応じての場所に一致するようVS_FileCompare.cmd
に変更します(現在使用しているVisual Studioのバージョンによって異なります。脚注*を参照してください))vspath
devenv.exe
「ファイル比較」という名前のショートカットを作成してデスクトップに配置すると(下のアニメーションで使用)、ファイルをデスクトップにドラッグアンドドロップするか、バッチファイルを直接デスクトップに配置できます。それで全部です!VS_FileCompare.cmd
使用法:
+を介してWindowsエクスプローラーを開きますWinE
エクスプローラーで比較する2つのファイルを選択します
以下のアニメーションに示すように、それらをドラッグアンドドロップします。
数秒後(Visual Studioの起動時間によって異なります)、結果がVisualStudioに表示されます。
注: Visual Studioが既に開いていても、問題はありません。この場合、VisualStudioの実行中のインスタンス内で新しいウィンドウが開きます。したがって、複数のファイルペアを比較できますが、一度に2つのファイルのみを選択していることを確認してください。
VS_FileCompare.cmd
上記のセクションで説明したバッチファイルを使用する別の方法を次に示します。コンテキストメニューの[送信]フォルダを使用してファイルを比較できます。
準備:
VS_FileCompare.cmd
にコピーします。+を介してWindowsエクスプローラーを開きますWinEshell:sendto
使用法:
+を介してWindowsエクスプローラーを開きますWinE
エクスプローラーで比較する2つのファイルを選択します
バッチファイルのショートカットのVS_FileCompare.cmd
名前が「Compare2FilesVS」であるとすると、2つのファイルを選択し、右クリックして[送信]→[Compare2Files VS ]を選択して、次のように比較を呼び出すことができます。
数秒後(Visual Studioの起動時間によって異なります)、結果がVisualStudioに表示されます。
ヒント: SendToフォルダーのアプローチが好きな場合は、さらに多くのことができます。たとえば、SendToを介してコマンドシェルを直接開くことができ、正しいパス(選択したファイルが存在するパス)から始まります。その方法については、こちらをご覧ください。少し余分な労力をかけるだけで、スクリプトと組み合わせて昇格された権利を取得することもできます。
MSDNリファレンス:
*) 脚注:(vsPath
へのパス)はVisual Studioのバージョンによって異なるためDEVENV.exe
、それを見つける方法を説明しています(Windows 10):
VisualStudioGalleryからVSCommands拡張機能を試すことができます。
最新のリリースでは、2つのファイルを選択して比較できます。
(コマンドウィンドウ)(Ctrl+ Alt+ A):
Tools.DiffFiles File1 File2
Visual Studio拡張機能:MadsKristensenによるファイルの違い
私は常にオープンソースプロジェクトであるWinMergeのファンでした。VisualStudioにかなり簡単に接続できます。
これを行う方法を示します
CompareFilesと呼ばれるVisualStudio拡張機能もあります。これは、ソリューションエクスプローラーのコンテキストメニューに[ファイルの比較]エントリを追加するだけです。組み込みのVisualStudiodiffツールを呼び出します。
誰か(私のような)がVSCommandsのようなオールインワン拡張機能をインストールしたくない場合に備えて...
Visual Studio 2012、2013、2015では、WebEssentialsを使用してこれを行うこともできます。ファイルを右クリックして、コンテキストメニュー→ Web Essential →選択したファイルの差分から:
別の拡張機能としても利用できます。
Visual Studioがインストールされている場合は、
"%VS110COMNTOOLS%..\IDE\vsdiffmerge.exe" "File1" "File2"
またはVisualStudio2013の場合:
"%VS120COMNTOOLS%..\IDE\vsdiffmerge.exe" "File1" "File2"
Visual Studioでは、diffはCommand Window
、Tools.DiffFiles
コマンドを使用して呼び出すことができます。
Command Window
ホットキーCtrl+Wで開くAか、メニューで[表示] → [その他のウィンドウ] → [コマンドウィンドウ]を開きますTools.DiffFiles "FirstFile.cs" "SecondFile.cs"
私もこの問題を抱えていました。TFSはありませんが、「ファイルタイプとファイル比較ツールの関連付け」という記事が役に立ちました。
具体的には、ステップ1b。
Visual Studioコマンドプロンプトを開き、Common7/IDEフォルダーに移動して次のように入力します。
tf diff /configure
仕事を成し遂げる優れた軽量ツールは、AkhilMittalによるFileComparerVisualStudio拡張機能です。
2つのファイルを比較して1つのファイルにマージするには、Visual Studio(任意のバージョン)がインストールされている場合に実行できる次の手順を次に示します。
手順1: VisualStudioコマンドプロンプトを開きます。Visual Studioコマンドプロンプトが見つからない場合は、VisualStudioツールを選択してください
スタート→VisualStudioコマンドプロンプト
ステップ2:コマンドvsdiffmerge.exeを入力します
比較だけが必要な場合は、スイッチ/mを無視してください。
構文1:
vsdiffmerge <file1> <file2> <file1> <outputfile> /t /m
構文2:
vsdiffmerge <basefilename> <CompareFilename> <basefilename> <OutputFilename> /t /m
例1:
vsdiffmerge test1.js test2.js test1.js output.js /t /m
例2:
vsdiffmerge.exe "C:\Users\livingston\Downloads\wa\wa\Files\pre\Test.js" "C:\Users\livingston\Downloads\wa\wa\Files\Prod\Test.js" "C:\Users\livingston\Downloads\wa\wa\Files\pre\Test.js" "C:\Users\livingston\Downloads\wa\wa\Files\output\samp.js" /t /m
ステップ3:ファイルをマージする
その場所にファイル名が存在しない場合、比較ツールは開かないことに注意してください。
また、比較を行う前にファイルを美化することもできます。Visual Studioでは、Ctrl++ K。D
オンラインで利用できる美容サイトはたくさんあります。
ローカライズされた言語でVisualStudioを使用する場合、コマンドウィンドウで作成するコマンドもローカライズする必要があります。たとえば、私のVS2019はポルトガル語なので、次のコマンドを作成する必要があります。
Ferramentas.CompararArquivos
コマンドウィンドウ(私の場合はJanela de Comando)は、[表示]>[その他のウィンドウ]>[コマンドウィンドウ]、または私の場合は[Exibir]> [Outras Janelas]> [Janela deComando]のメニューから表示できます。
これは、Visual Studio 2012の優れた拡張機能の1つであると思います。これは、コード比較と呼ばれ、ここにあります。