WinMergeを使用してフォルダ内のファイル差異行数をカウントする方法

あるプログラムに機能を追加した場合など、元のソースからの変更ステップ数をカウントしたい場合が多々あります。

通常ステップカウンタを使用してソースコードのステップ数をカウントします。
ただしステップカウンタでは変更前/後のソースステップ数を比較することで「追加」行は容易にカウントできますが、「変更」行はカウントできません。

そんな時はWinMergeを使用します。
WinMergeはソースの差異を比較、抽出してくれるツールで、通常は複数ファイルのコンフリクト調査・マージ作業に使用します。

その機能を利用してファイルの差異行数をカウントします。
※WinMerge自体の詳細な使用方法は解説サイトも豊富なため割愛します。


1.比較フォルダの選択


「ファイル」->「開く」メニューを選択し、「ファイルまたはフォルダの選択」ダイアログを開きます。
「比較するファイルまたはフォルダ」領域にある”1″、”2″入力項目に比較元、比較先フォルダ名を指定します。


2.比較実行


比較フォルダを指定したら「OK」ボタンを押すと、比較処理が開始されます。


3.比較結果一覧確認


比較結果にフォルダ名、ファイル名のリストが表示され、一番右の列に「差異数」列が表示されます。
注意点として、この差異数は変更された箇所(塊)の数であり変更ステップ数ではありません。

例えば連続する10行をまとめて修正した場合、差異数は10ではなく1となります。
離れた箇所を5行ずつ2か所変更した場合、差異数は2です。


4.比較結果詳細確認


比較結果一覧で確認したいファイル行をダブルクリックすると、ファイル内の変更箇所が別タブで表示されます。
左エリアが比較元、右エリアが修正後のファイル内容です。

ここで表示設定を1つ変更します。
「表示」->「Diffコンテキスト」と辿り、設定値を「0」に変更します。
0にすると差異行のみが比較結果に表示されます。
1にすると差異前後1行ずつが比較結果に表示されます。
今回は変更行のみをカウントするため設定値は0にします。
※Diffコンテキストメニューは比較結果一覧画面表示時はメニューに表示されません。

この画面でファイル内容にマウスカーソルを合わせるとエリア下部に行番号が表示されますが、これはファイル内容全体での該当行番号です。
変更行だけの行番号では無いため注意しましょう。


5.変更箇所カウント


比較結果詳細の右エリア内容を全選択しテキストエディタ(サクラエディタ等)に貼り付けます。
テキストエディタの機能で行番号が表示されるため最下行の行番号から変更ステップ数が分かります。

複数ファイルをカウントする場合、3~5の作業をファイル数分繰り返しExcel等で集計します。



以上、アナログな方法ですがWinMergeを使用してフォルダ内のファイル内容差異行数をカウントする方法を紹介しました。



コメント

タイトルとURLをコピーしました