web-dev-qa-db-ja.com

Visual Studioで2つのファイルを比較する

VS 2012で、2つのファイルまたは2つのバージョンのファイルを比較するための新しい比較ツールを見ました。私はそれが好きです。しかし、それを見つけようとしたとき、私はTFSを使用していないのでできません。 2つのファイルをVSの組み込み機能とTFSなしで比較する方法はありますか?

375
Libor Zapletal

コマンドプロンプトからdevenv.exe /diff list1.txt list2.txtを呼び出すことも、Visual Studioインスタンスが既に実行されている場合は、便利なファイル名補完を付けてコマンドウィンドウにTools.DiffFilesと入力することもできます。

Using Tools.DiffFiles from Visual Studio Command window

729

VSCommandsエクステンションはVisual Studio Gallery から試す​​ことができます。 最新のリリース で2つのファイルを選択して比較することができます。

enter image description hereenter image description here

76
Jarek Kardas

上記の受け入れられた答えに触発されて、ドラッグアンドドロップまたはを使用して、2つのファイルをVisual Studioと即座に比較できる非常に快適な方法を見つけました「送信先」コンテキストメニュー。それは一度だけ行う必要がある少しの準備だけを必要とし、それはスイスアーミーナイフのように便利です。

ドラッグアンドドロップを使用したファイル比較

準備:

1。お気に入りのテキストエディタを使用して、新しいbatchファイルを作成します。次を入力します。

@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番目のファイルを最初のパラメーターとして渡し、次に1番目のファイルを2番目のパラメーターとして渡すことに気付いたためです。

  1. このコードをVS_FileCompare.cmdとして保存し、必要に応じてvspathを変更して、devenv.exeの場所と一致するようにします(Visual Studioのバージョンに応じて現在使用中、footnoteを参照*) )

  2. VS_FileCompare.cmd "File Compare"という名前のshortcutを作成し、desktop(以下のアニメーションで使用されているように)、ファイルをドラッグアンドドロップしたり、デスクトップに直接バッチファイルを配置したりすることが常に可能です。それで全部です!

使用法:

  1. Windows Explorerを開きます Win + E
  2. エクスプローラーで比較する2つのファイルを選択します
  3. 以下のアニメーションに示すように、それらをドラッグアンドドロップします。 DragDropDemo

  4. 数秒後(Visual Studioの起動時間による)、結果がVisual Studioに表示されます。 Visual Studio View

注:Visual Studioが既に開いている場合、害はありません。この場合、実行中のVisual Studioのインスタンス内に新しいウィンドウが開きます。したがって、複数のファイルペアを比較できますが、一度に2つのファイルのみを選択したことを確認してください。


別の方法:SendToコンテキストメニュー

上記のセクションで説明したバッチファイルVS_FileCompare.cmdの使用方法の代替案を次に示します。コンテキストメニューの[送信]フォルダーを使用してファイルを比較できます。

準備:

  1. バッチファイルVS_FileCompare.cmdのショートカット "Compare2Files VS"を作成し、SendToフォルダー。 Windows Explorerを開きます Win + E
  2. SendToフォルダーを開くには、ファイルエクスプローラーのアドレスバーにShell:sendtoを入力します(説明は here )。次に、準備したショートカットをこのフォルダーに入れます。

使用法:

  1. Windows Explorerを開きます Win + E
  2. エクスプローラーで比較する2つのファイルを選択します
  3. バッチファイルVS_FileCompare.cmdのショートカットの名前が "Compare2Files VS"であると仮定すると、2つのファイルを選択して右クリックし、 Send To-> Compare2Files VSを選択して、以下に示すように比較を呼び出します。 SendTo

  4. 数秒後(Visual Studioの起動時間による)、結果がVisual Studioに表示されます。 Visual Studio View


MSDNリファレンス:
- 差分ウィンドウの使用法
- Visual StudioのDiffパラメーター


*)脚注:vsPathDEVENV.exeへのパス)はVisual Studioのバージョンによって異なるため、それを見つける方法を説明しています(Windows 10):

  1. Windowsのスタートメニュー Windows StartVisual Studioアイコンを見つけます
  2. 右クリックしてコンテキストメニューを表示します。 More> Open File Locationを選択します。
    Windowsエクスプローラーが開き、Visual Studioショートカットが強調表示されます。
  3. Visual Studioを右クリックして、Propertiesを選択します
  4. プロパティダイアログで、 "Target:"VSProperties
60
Matt

私はいつもオープンソースプロジェクトであるWinMergeのファンでした。かなり簡単にそれをVisual Studioに接続することができます。

http://blog.paulbouwer.com/2010/01/31/replace-diffmerge-tool-in-visual-studio-team-system-with-winmerge/ /

これを行う方法を紹介します

24
user1877337

CompareFiles というVisual Studioの拡張機能もあります。これは、ソリューションのエクスプローラのコンテキストメニューに[ファイルの比較]エントリを追加すること以外は何もしません。組み込みのVisual Studio差分ツールを呼び出します。

万が一(私のような)誰かがVSCommandsのような一体型の拡張機能をインストールしたくないのであれば...

21
Stephan

Visual Studio 2012、2013、2015では、 Web Essentials を使用してファイルを右クリックし、コンテキストメニューから[Web Essential]、[Diff]の順に選択したファイルを選択することもできます。

編集: 現在は 個別の拡張子として利用可能です

enter image description here

18
Hamid Mosalla

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/ /

Command Window CTRL + ALT + A

Tools.DiffFiles File1 File2
15

私もこの問題を抱えていました。 TFSはありませんが、I この記事は役に立ちました

具体的には、ステップ1b。

Visual Studioのコマンドプロンプトを開き、Common7/IDEフォルダに移動して次のように入力します。

tf diff /configure
2
billb

Visual Studioコード あなたができること:

  • Explorerに行く
  • 比較したい最初のファイルを右クリック
  • Select for compareを選択
  • 比較したい2番目のファイルを右クリックします
  • Compare with '[NAME OF THE PREVIOUSLY SELECTED FILE]'を選択
1
jahller

VS 2017の場合インストール https://marketplace.visualstudio.com/items?itemName=vs-publisher-457497.FileComparer2017

問題は、異なるプロジェクトのファイルを比較できないことですが、同じプロジェクトのファイルをコピーして比較することはできます。

Context Menu

File Diference

1
Juan Pablo

Akhil MittalによるFile Comparer VS Extension。仕事を終わらせる優れた軽量の道具。

0
usefulBee
0
spottedmahn

任意の2つのファイルを比較して1つのファイルに結合するにはVisual Studio(任意のバージョン)がインストールされている場合は、次の手順に従います。

ステップ1: Visual Studioのコマンドプロンプトを開きます。ビジュアルスタジオコマンドプロンプトが見つからない場合は、ビジュアルスタジオツールを選択します。

スタート - >ビジュアルスタジオコマンドプロンプト

enter image description here

enter image description here

ステップ2: vsdiffmerge.exeコマンドを入力する

比較だけが必要な場合は/ mスイッチを無視してください。

構文1:
vsdiffmerge <ファイル1> <ファイル2> <ファイル1> <出力ファイル>/t/m

構文2:
vsdiffmerge <ベースファイル名> <比較ファイル名> <ベースファイル名> <出力ファイル名>/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

enter image description here


ステップ3: ファイルをマージする

enter image description here ファイル名がその場所に存在しない場合、それは ではない 比較器を開くことに注意してください。

また、比較を行う前にファイルを美しくすることもできます。ビジュアルスタジオではCtrl + K + D.

オンラインで利用できる美しいサイトがたくさんあります。

0

Visual Studioコードはこれに最適です。フォルダを開き、両方のファイルを右クリックして比較します。

0
niico