Excel といえばバージョン履歴管理ができない困ったちゃんとして有名ですが、gitでバージョン管理したいものですよね。
そこで、git-xltrail の出番です。
git-xltrail はオープンソースでフリーウェアである git の拡張なのですが、なんと Excel VBA の git diff
を取れるすぐれものです。
使い方ですが、Git for Windows がインストールされている Windows 環境に 、git-xltrail をインストールして初期化するだけです。あとは 'git diff' を実行すれば差分を取得できます。
初期化の方法ですが、すべてのリポジトリで git-xltrail を有効にするには以下のコマンドを実行します。
> git xltrail install
特定のリポジトリで git-xltrail を有効にするには以下のコマンドを実行します。こちらの方が安心ですね。
> git xltrail install --local
そして、以下のような動作をする Excel ファイルがすでにリポジトリにコミットされているとします。
VBA のモジュールは以下のようになります。
Sub ShowMessage() MsgBox "Morning!!" End Sub
これを以下のように書き換えます。
Sub ShowMessage() MsgBox "Hello!!" End Sub
ここで、'git diff' を実行すると以下のように差分が表示されます。
うーん。すばらしい!
しかも、ちゃんとコミットログでの diff もとれます。
> git diff 335baf30 f55792a08d
惜しむらくは日本語に対応していないので文字化けしてしまうところでしょうか(diffはできる)。
それでも diff ツールとして割り切って使うなら、なかなかよいツールです。
ちなみに、この git-xltrail は git merge
にも対応していたりします。
試してみたところ罠があるようでしたが、きちんと下調べをすればマージも使えます。
完全なオープンソースではないので(dllが含まれてる)日本語対応は難しいかもしれませんが、日本語対応するのを期待したいところです。
是非とも活用したいツールですね。