T

Subversionで開発環境を整備

以前、いろんな人たちから強く勧められていたSubversionへの移行が出来ないかとあれこれ調べていた。基本的なコマンドはCVSのものが使えるので、あとは運用方法だ。せっかくなので、trunkとbranchを開発するユーザがいて、trunkの修正をリリースするときにリリース担当チームに修正分と内容がきちんとリストになって渡されて、branchにもmergeされるようにしよう。

複数のユーザで同じレポジトリを使って、権限の問題を発生させないようにするには、コミットするユーザだけ同じにしてあげればいいみたいだ。ドキュメントを参考にしてそのユーザのauthorized_keysをいじるともっといいらしい。

リリース用のリスト作成だが、CVSのloginfoみたいな仕組みがあるか調べたら、レポジトリのhooksディレクトリに実行スクリプトを作ってあげるとcommit時の動作にフックをかませることができるらしい。*.tmplというファイルがすでに作られているが、実際に動作させる場合は.tmplのつかないファイルを置いて、実行権限を付与する。

ただし、hooks用の実行ファイルを作成して、今度から新規に作成されたレポジトリには全てそれを適用させようとしても、現在のところsvnadminにはその機能はない。よって、いちいちコピーするか、スケルトンになるレポジトリからrecoverを使って新規作成するしかない

$ cp -a template-repos new-repos
$ rm new-repos/db/uuids
$ svnadmin recover new-repos

ちょっと強引なので避けたいところ。2004年の時点での機能追加提案なので、本当に今でもそうなのかはまだわからない。

Posted by on 2月 5, 2007 in Subversion

コメントを残す