5

それぞれ3つのバージョン(元のバージョンと、各ファイルの2つの異なる変更バージョン)を持つバイナリ構成ファイルのセットがあります。2つのバージョンとオリジナルの違いをすべて同時に確認できる必要があります。

私が必要としているのは、バイナリファイル用の3者間差分ツールです。かなり疲れ果てたGoogle検索を通じて、私は最終的に、私が必要としていることを正確に実行するアプリケーションのスクリーンショットに出くわしました。残念ながら、画像を含むフォーラムの投稿には、使用しているアプリケーションが記載されていません。

http://www.xboxhacker.org/index.php?topic=15032.0

誰かが私を3つのバイナリファイルのバイナリセーフ(16進)比較を提供する(Windows)アプリケーションの方向に向けることができますか?

4

5 に答える 5

10

Vimには、任意の数のファイルを比較できる差分ツールが組み込まれています。また、Windowsでも動作します。あなたはそれをhttp://vim.orgで見つけることができます。

Windows用のvimの標準インストールにはxxd、が含まれています。これにより、バイナリファイルをテキストとして表示できます。

たとえば、次のことを試してみてください。

xxd xxd.exe

あなたが得るでしょう:

0000000: 4d5a 9000 0300 0000 0400 0000 ffff 0000  MZ..............
0000010: b800 0000 0000 0000 4000 0000 0000 0000  ........@.......
0000020: 0000 0000 0000 0000 0000 0000 0000 0000  ................
0000030: 0000 0000 0000 0000 0000 0000 d800 0000  ................
0000040: 0e1f ba0e 00b4 09cd 21b8 014c cd21 5468  ........!..L.!Th
0000050: 6973 2070 726f 6772 616d 2063 616e 6e6f  is program canno
0000060: 7420 6265 2072 756e 2069 6e20 444f 5320  t be run in DOS 
0000070: 6d6f 6465 2e0d 0d0a 2400 0000 0000 0000  mode....$.......
0000080: 6ba7 bec3 2fc6 d090 2fc6 d090 2fc6 d090  k.../.../.../...

等...

したがってxxd、バイナリファイルをテキストファイルにダンプするために使用できます。

xxd orig > orig.txt
xxd mod1 > mod1.txt 
xxd mod2 > mod2.txt

そして、diffモードでvimを実行します。

vim -d orig mod1 mod2

そして、これはあなたにこのようなものを与えるでしょう:

3ウェイvimdiffの例

(このスクリーンショットはここから取られたものであり、VIMでの3方向の差分がどのように見えるかを示したものにすぎません)

これらのツールはすべてWindowsで利用できるため、問題を解決できるはずです。

編集:

の結果をマージした後xxd、次を使用して16進ダンプをバイナリファイルに変換できますxxd -r

xxd -r merged_xxd_file merged_binary_file

詳細とオプションについては、xxdのマンページをご覧ください。

于 2010-12-30T09:42:32.667 に答える
2

スクリーンショットはAraxisMergeからのものです。彼らのプロエディション($ 270)は、3者間比較をサポートしています。

于 2011-01-04T20:18:13.313 に答える
2

ECMerge (私が取り組んでいるツール)を見ることができます。これには、バイナリファイル(HEX + ASCII)の2方向および3方向の差分があります。マージ機能はありません。変更された領域から変更された領域に簡単に移動でき、長いゾーンをコンパクトにできます(長い挿入、変更、または変更なし)。

于 2011-12-10T15:08:49.287 に答える
0

Beyond Compareの最新バージョンは、3方向の差分とマージをサポートしているようです。さらに、その機能リストには、バイナリファイルの比較がサポートされていると記載されています。

これは自由ソフトウェアではないことに注意してください:-)

于 2010-12-30T16:22:27.803 に答える
0

私は最近、バイナリファイルもサポートしているように見えるp4mergeを紹介されました。

入力として3つのファイルを取ります:オリジナルと2つの派生物。編集機能と競合解決機能を備えた、マージされたファイルを表示する4番目のウィンドウでそれらを並べて表示します。

これを使用して、大きなコードベースの2つのブランチをマージしましたが、非常に便利でした。

p4mergeの例

今、私はバイナリファイルをマージするためにそれを使用していませんが、それは差分画像をサポートしているので、バイナリがサポートされていなかったら私は驚かれることでしょう。

于 2014-07-15T20:29:39.143 に答える