Subversion に慣れてみる

今まで CVS は触ったことあるんですが,trac とかみてると,やっぱりこれからの時代は Subversion(and WebDAV)かなぁと思って,ちょこっと触ってみました。

  • ローカルコピーの状況確認で cvs update していたのは svn status するようにするべし。*1
  • svn commit したあとに svn log をしても最新のログメッセージは見られません。svn update するとみられるようになります。
  • svn add や delete は,ディレクトリを指定すると下位のファイルについてもよしなに計らってもらえます。
  • svn add せずにファイルを追加すると,svn status では「?」マーカがつきます。svn commit しても反映されないです。
  • svn delete せずにファイルを削除すると,svn status では「!」マーカがつきます。svn commit しても反映されないですし,svn update すると復活します。

後半は何のためにやっていたのかというと,プログラマとデザイナの分業体制を Subversion に持ち込むためにはどうしたらいいのかなぁと思って調べていたのでした。デザイナに「変更を fix するたびログインして svn commit -m '...' って入力してね」とお願いするのは酷なので,Samba で自由に触らせつつ,リビジョン管理できたらいいな,と思ってシミュレーションしてみました。
cron で svn status して,? があれば svn add して ! があれば svn delete するようにすればいいかな?と思ったんですが,いしなお!さんのように作業用チェックアウトに rsync & svn commit するほうが安全だしシンプルな感じですね。

*1:「変更点を見るのに、cvs update、あるいは cvs -n update を実行する癖をつけてしまいました」(Tezさん訳)という記述が svn book に載っていて笑えました。cvs update が癖になってたヤシ挙手しる!→ノシ ノシ ノシ…みたいな感じで