8

最近、ある開発者が組織を離れました。彼が運用サーバーに置いた実行可能ファイルのバージョンが、現在 TFS にあるものと同じかどうかはわかりません。(Just Compile や ILDASM などを使用する以外に) TFS からプロジェクトをビルドし、その実行可能ファイルを現在運用サーバーにあるものと比較する方法はありますか?

更新: 私は Just Decompile を試していて、両方のバイナリを読み込んだので、各名前空間、メンバーなどを調べて、それらを互いに比較しています。Visual Studio で Schema Compare を使用して 2 つのデータベースのスキーマを比較し、更新、削除、追加された項目を強調表示して違いを確認することに慣れています。これらの 2 つの逆コンパイルされたバイナリを取得し、何らかの形で違いを強調するツールはありませんか?

4

3 に答える 3

6

今、私はこのアプローチしか考えられません:

  1. dotPeekを使用してライブ アセンブリを逆コンパイルする
  2. dotPeekを使用して、TFS から新たに構築された同じアセンブリを逆コンパイルします。
  3. 2 つの逆コンパイルされたソースで Beyond Compare のようなツールを使用する
  4. 必要に応じて変更をマージします

これがあなたが探していたものであることを願っています??

バージョン管理の観点から将来的に役立つ可能性のあるその他の読み物は、どのdllにどの機能が含まれているかを知っています(役立つ場合とそうでない場合があります。明らかなことを言っている場合は許してください):

アセンブリのバージョン番号を維持するためのベスト プラクティス/ガイダンス

幸運を

于 2012-07-09T23:17:24.793 に答える
5

はい、NDependを使用すると、2 つの .Net アセンブリ間で差分を取ることができます。まったく同じソースを 2 回コンパイルしても、まったく同じアセンブリは生成されません。

于 2012-07-09T23:17:44.397 に答える
-1

バイナリ ファイルの比較を含む詳細な比較に使用する製品は、Beyond Compareです。この製品を最初に手に入れたときは、実用性が限られていると思いましたが、非常に難しい問題を解決するのに役立ちました。ディレクトリ、テキスト ファイル、バイナリ ファイル、mp3、写真、およびソフトウェアのバージョンを比較します。特別高いわけでもありません。

リリースとデバッグの両方でアプリケーションのバイナリに対して製品を実行したところ、すべての差分が強調表示されました。

2 つのバイナリに対して ILDASM を実行し、目で見て比較することができると確信していますが、このようなツールはおそらく何度でも元が取れます。

于 2012-07-09T23:15:58.677 に答える