Mercurial + Dropbox

Dropbox が 50 GB プラント 100 GB プランが出てきましたね。愛用どころか Dropbox (S3) に依存しまくりです。

さて、普段開発してるときのリポジトリmercurial なのですが、Dropbox の上にリポジトリを置いて開発すると保存するたびに履歴が発生するので嬉しくないなぁと思っていたのですが、ローカルで push すればいいという事に気付きました。

spam_main_local のようなリポジトリがローカルにあって、そこで普段を開発して、あるていど落ち着いたら push します。push 先は Dropbox です。spam_main_dropbox というリポジトリDropbox 上に作っておいてそこに push します。Dropbox から bitbucket 等の外のリポジトリに定期的に push するといった具合です。こうすることで Dropbox 上での履歴がそんなには更新されない気がします。

まぁ、最近 Dropbox がフォルダ単位でのパージを憶えたので、普通に Dropbox で開発してもいい気はしますが。

local hg repo -> dropbox hg repo -> bitbucket hg repo

追記 Dropbox の共有機能によるリポジトリ共有

また別のパターンもありまして、Dropbox 自体をメインのリポジトリとしてしまうというのもあります。
/Dropbox/home/hg なんてフォルダを作って、そこを開発者達で共有すれば、わざわざリポジトリを共有するなにかを準備する必要がない ... かもしれません。
もちろんこれには問題があって、Dropbox はいつ同期を行うタイミングが不明確なため、そのかんに clone したり push したりするとよく分からないことになるような気がします。
まだこちらは実際に使ってみたことがないので、今後なんかしらの機会で使ってみたいと思います。

local hg rep -> dropbox share hg repo