UnisonとSubversionのどちらを使うべきか(詳細)

理想的には、バイナリファイル(MS Officeのファイル, PDF, PS, 画像ファイルなど)はUnison、論文やプログラムのソースファイルなどのテキストベースのファイルはSubversionで管理するのが良い。

しかしながら、Subversionはバイナリを扱う際にバックアップするたびにファイルを丸ごと保存すること、ファイルやディレクトリの追加・削除を明示的にコマンドで提示しなければならないので操作が複雑であることから、とりあえずはUnisonでバックアップを取って置くのが良いと思う。

Subversionは、ファイルの差分をとりつつバックアップをとるソフトウェアである。このため、以前バックアップしたバージョンにいつでも戻ることができる。また、更新がないソフトウェアのバックアップはとらないので、バックアップファイルの容量を最小限に抑えつつ、バックアップを開始したときから現在までの全てのバージョンを保存できる。しかしながら、バイナリファイルについては差分をとることができないため、更新がある度にバイナリファイルを丸ごとバックアップする。このため、バイナリファイルに関しては更新が繰り返されるたびにバックアップファイルの容量が急激に増えていってしまう。

Unisonは、ある二つのディレクトリ内のファイルを同期させるためのソフトウェアである。Unison実行時に二つのディレクトリに差異があれば、二つのディレクトリの内容が同じになるように同期を行う。もし、同時に双方のディレクトリで同じファイルに変更が加えられている場合は、利用者にその旨を通知し、利用者に対処してもらった後に同期をとる。UnisonはSubversionと違い、ファイルの同期を取るソフトウェアなので過去のバックアップファイルを復帰させることはできない。


卒論生のためのバックアップ講座