Home‎ > ‎ProgramTool‎ > ‎

Subversion

インストールしてみた。
TortoiseSVNが使えそう。
ぱっと見、CVSよりいいなと思った点。

  • ファイルなどの名称変更を履歴で管理できる
  • ディレクトリレベルでの扱いが簡単
  • ブランチの扱いが簡単
  • サーバ設定がひつようですが、http(webDAV)を通して通信できる

Subversion によるバージョン管理(日本語訳): http://subversion.bluegate.org/doc/book.html

もしかしたら、今までバージョン管理が困難だった運用更新作業用にも使えないかなと模索中。
自分のコードの管理にはいいけど、普通のhtmlコーダの人がオペレーションする運用とかに導入には、まだ敷居が高いなとおもった。

ssh+svnでログイン

svn checkout svn+ssh://xxx/project/trunk
とかなわけだが、3回ログイン要求されるっぽ。
http://www.turbolinux.co.jp/support/document/knowledge/152.html
というわけで、authorized_keyを設定して、ログイン不要にしますた。

TortoiseSVN

SubversionのWindows用GUIというか、エクスプローラに組み込まれるプラグインのようなモノです。 TortoiseCVSのSubversion版、と考えていただいていいでしょう。

公式サイト: http://tortoisesvn.tigris.org/

ランゲージキットを入れると日本語化することもできます。 (公式サイトで配布されていますので、インストールしてヘルプを見ながら使い方を覚えることも可能。)

日本語での説明: http://tortoisesvn.bluegate.org/Help/dailyuseguide.html

try&error

とりあえず、自分のマシンにsvnサーバ立てていじっています。 合わせてTortoiseSVNも試験中。 で、何に使えるか試験しているかというと、下記のようなことです。

運用といっても、1つテストサーバ、1つ公開サーバってのなら、何の問題もありません。新規構築と一緒なので、CVSでもやってけます。 問題なのは、将来の複数の時点で同じファイルのヴァージョン違いを含む作業をやらなければならないときです。

  • /今週末のマスタ(trunk)
  • /来週月曜
  • /来週火曜
  • /来週水曜
  • /来週木曜
  • /来週金曜

仮に、毎日定期的に更新が入るとします。更に、随時至急対応の更新も入ります。 それぞれ、基本的には4日前までに作業を終えていなければならないとします。 常に4日前に完全なモノが出来ていれば問題ありません。しかし、実際には、情報がこないとか、4日前を過ぎても随時変更が入るとか、あったりするわけです。

例えば、来週木曜の部分まで作業が進んでいるときに来週火曜の部分に変更が入ると、水曜と木曜にも同じファイルを使っているかチェックして、使っていた場合には変更を反映する必要が出てくるわけです。 また、来週水曜日の作業をする際には、月曜と火曜に、水曜日にも使用するファイルが含まれているかどうか確認する必要があります。 そういったわけで、結構複雑な話になっちゃうわけですな。

で、今のところブランチをわけてマージするところまでやってみました。 マージが結構面倒くさい。月曜日分から順にマージしていくと、リビジョンがより古いモノにぶち当たった場合、コンフリクト起こすのですな。まぁ、これは、 作業順と公開日付が逆順になっているとき起こる問題なので、悪いとばかりもいえず、まぁ、保留にしておいてもよいでしょう。

一番問題になったのは、全てのブランチの中から今回作業するファイルが含まれているかどうか確認するところです。ログをファイル名検索で絞り込めば出なくもないですが、面倒くさいのと、ちとわかりにくい。

bookmark 

Comments