テラシュールブログ

旧テラシュールウェアブログUnity記事。主にUnityのTipsやAR・VR、ニコニコ動画についてのメモを残します。

Monodevelopでソースコードの差分を確認する

開発時、過去のソースと現在のソースを比較したくなる事は結構あると思う。

そんな時の為、昔は「変更前のコードをまるごとコメント化」みたいな事をしていた訳だけど、最近はGitやSVNのようなバージョン管理が出てきたので、ソースに残さずなんとかなるようになってきた。

このソースコードの差分だけど、monodevelop上から確認することができたらしい。

スクリーンショット 2012-08-25 23.41.45

Monodevelop上で過去のコードと比較する

差分を確認するには、まず前提条件としてソースコードが「バージョン管理」されている必要があるみたい。なので、まずはバージョン管理に登録してやる必要がある。

なお、自分の環境のGitの設定はこんな感じ。

[Unity3D]Unity+Bitbucketでプライベートリポジトリを使ってみた
http://terasur.blog.fc2.com/blog-entry-171.html

後は簡単、画面下の「Change」ボタンを押せば、上の画像のように過去にコミットしたバージョンと現在ローカルに保存しているバージョンの差分を作成してくれる。

スクリーンショット 2012-08-25 23.42.49

表現はコードの緑が追加部分、赤が削除部分、青が変更部分になる。またこの部分の「x」や「>>」のボタンを押すと、対応するコードをマージすることができる。

スクリーンショット 2012-08-26 0.06.24

■一部の機能は日本語文字化けする事がある

残念なことに、他のmonodevelopから利用するのは微妙に面倒になっている。具体的には日本語表記が文字化けする。

例えば、Blame(どのコードが何時のバージョンで更新されたかを一覧表示する感じの機能)では、「誰が」「何時」更新しコミットしたかは出るのだが、一覧に表示されているコミットコメントが文字化けする。(カーソルを合わせた時に表示されるコメントは文字化けしない)
またMergeでは日本語が文字化けして読めない等もある。

コードを編集しながら確認できるので便利なのだが、場合によっては不便になるような気もするので、状況によりけりでバージョン管理標準の差分ツールを使ったほうが良いかもしれない。



自分の環境ではGitしか試してないけど、アセットサーバーやSVNでも機能するのか興味があったり。アセットサーバーは自分の環境では試すことは無いと思うけど、SVNはその内試してみたい。