dreamedge.net

Subversionでのバージョン管理方法

2009-01-01T10:27:00+0000

いままで常に個人プログラミングだったので,バージョン管理をしたことがなかった.
ので,あまりにも基本だが,Subversionでのバージョン管理の手法を調査してみた.

  • trunk, branches, tagsについて

開発の段階に合わせてtrunk, branches, tagsというディレクトリを作成して管理する.
trunk: 最新のコード
branch: リリース用のコード 1.0.xとかの名称を付けて管理する
tag: 本番リリースのコード.branchが安定した時点で1.0.1とかして作成する.

  • subversionへの登録方法

http://svn.hoge.com/svn/repo/というリポジトリでapp/ディレクトリにあるコードを管理しようとする場合,

1. trunkに現在のコードをimportする

$ svn import http://svn.hoge.com/svn/repo/app/trunk -m 'initial import'

2. 登録したコードをworking/ディレクトリに取り出す

$ svn checkout http://svn.hoge.com/svn/repo/app/trunk working

3. branchを作成する

ある程度コードが安定してきたら,リリース用のブランチを作る

$ svn mkdir http://svn.hoge.com/repo/app/branches/
$ svn  copy http://svn.hoge.com/repo/app/trunk \

http://svn.hoge.com/repo/app/branches/1.0.x

       -m 'create a branches 1.0.x of app'

リリース時はtag/1.0.0といったディレクトリを作る.作り方はbranchと同様

4. 作業コピーをブランチに切り替える

$ svn switch http://svn.hoge.com/repo/app/branches/1.0.x

5. gonzuiにtrunkを登録する

gonzuiはrubyベースのコード検索エンジン.appのtrunkを,gonzuiに登録して検索可能にする

./gonzui-import --svn http://svn.hoge.com/repo/app/trunk app