[[unison]]
----
====== 概要 ======
* http://www.cis.upenn.edu/~bcpierce/unison/
* 結構昔からある、ファイル同期プログラム。
* 二つの場所(ローカル、リモート問わず)のファイルの同期を、結構高速に取ってくれる。
* ファイルの変更履歴は、.unison/ 以下に保存しているので高速。
* リモートのファイル更新には、ssh, rsync などいくつかのプログラムを利用可能。
====== 使い方 ======
* 二つのホスト間で同じバージョンの unison をインストールしておく。2.40.x まで同じならOK。
* コマンドは以下の通り。
unison directory ssh://remote.host//home/skk/directory
* -batch: interactive な問い合わせ無効。
===== prf ファイル =====
* 自動でコマンドを実行するときに有効。
* 以下、サンプル。
# Unison preferences file
# option
# times ファイルの時刻をコピー元のままに保存する
times = true
# prefer newer 新しい方を優先する
prefer = newer
# batch mode
batch = true
# ローカルとリモートの指定
# 実際に同期したいディレクトリはpathで指定するため、全体を指定
root = /cygdrive/c/Users/skk/unison/
root = ssh://www.tsukune.org//home/skk
# 実際に同期したいディレクトリを指定(複数可)
#path = home/skk
#path = dir_b
#path = dir_c
#無視して欲しいファイルを指定
ignore = Name *~
ignore = Name .*~
ignore = Name .bak
ignore = Name .VirtualBox
ignore = Name .elmo
ignore = Name Mail
ignore = Name Maildir
ignore = Name nosvn
ignore = Name tmp
ignore = Name .w3m
ignore = Name .svn
ignore = Name .subversion
ignore = Name redtail-ubuntu-9.10-i386.qcow2
ignore = Name .cache
ignore = Name .mozilla
ignore = Name download
ignore = Name move/200*
ignore = Name chromium_201209_matsumoto_snap.tar.gz
====== windows における unison ======
* バイナリがいくつか転がっているが、cygwin 付属の unison が一番使いやすい。
* .unison/hoge.prf として、以下のように実行
unison hoge
* cygwin の cron をサービス登録して実行させると良い。
====== 参考 ======
* https://sites.google.com/site/hymd3a/linux/unison