git svn dcommit でSubversionに記録されるコミットログ
諸般の事情でSubversionの中央リポジトリーを使わなくてはならないが、複数人で分散作業したくなった時。
git-svnが使えそうな気がしていたが、Subversion側にどのようなコミットログが残るか心配だった。たとえば、各人がgit内で適当に書いたログがそのまま載ってしまうのだろうか、とか。
少し試してみた感じだと、気をつければ、なんとかなるような感触。
- svn-master
こんなかんじの階層にしておき、おおよそ以下の流れで作業する。
- 各人の作業はgit-workでやる。
- 各人の作業がよい感じになったら、git-masterにpull-requestする。
- git-masterの管理者は、git pull --no-commit でpullする。
- git-masterの管理者は、pullした内容に問題なければ、git commit する。
- このときのコミットログがSubversionにも記録される模様。
- git-masterから、git svn dcommit する。
3で --no-commit を付けないと、git-workでコミットログした時の内容がそのままSubversionのコミットログになるっぽい。
あまり細かく試してはいないけれども、うまく運用すれば、何とかなりそうだ。