[ Top |Wiki |掲示版 ] powered by


L-penguin

Subversion よかった探し

Subversionを使ってて、これはいいなぁと思った機能とその使い方をまとめてみました。ちょっと主観的なのはごめんなさい。

ファイルの移動ができる

なんといってもこれは重要ですよね。

svn mv oldfilename newfilename

タグとブランチの実装が素敵

SVNでは、タグとブランチは「svn copy」で実装されています。

# タグを打つ
svn copy file:///(略)/Project/trunk file:///(略)/Project/tags/1.0-Release

# ブランチを作る
svn copy file:///(略)/Project/trunk file:///(略)/Project/branches/Stable-branch

「開発の主流とはちょっと違う事をしたいので、現在のデータをコピーして、それをいじる」というのがブランチの趣旨ですから、copyを使うこのやり方は理にかなっています。

タグも、「現在の状態を、どこかにコピーして保存しておく」という点で同じです。

さらに、次のようにすれば「現在あるタグ・ブランチの一覧」が得られます。

svn ls file:///(略)/Project/tags
svn ls file:///(略)/Project/branches

わかりやすいです。

URLを使ってレポジトリを直接いじれる

タグとブランチの所で暗黙のうちに使ってましたが、svnのコマンドは引数にURLを直接指定できるものがあります。

で、どう使っているかというと、新しいプロジェクトを作る時にこれが有効活用されます。

$ svn mkdir file:///home/penguin/repository/NewProject
$ svn mkdir file:///home/penguin/repository/NewProject/trunk
$ svn mkdir file:///home/penguin/repository/NewProject/branches
$ svn mkdir file:///home/penguin/repository/NewProject/tags

$ svn checkout file:///home/penguin/repository/NewProject/trunk ./NewProject

レポジトリの方にあらかじめディレクトリを構成してから、それをcheckoutして作業をはじめるわけです。

svn:executable

SVNではファイル(や、ディレクトリ)に「属性」が付けられます。で、svn:executableという属性を付けると、checkoutやexport時に、そのファイルには必ず実行可能属性が付きます。

$ svn propset svn:executable Executable test.cgi

といった感じで使えます。


Since 2002, L-penguin.