第9回ASUB会(朝にサブバージョンを学ぶ会)

第7章ファイルロックとバイナリファイル

あまり使わなさそうなのでスキップ。バイナリファイルを扱うときに便利なファイルロックの方法などの紹介

第8章リポジトリの構成

リポジトリの構成

プロジェクトのリポジトリは以下のようにツリーを分けるのが慣習になっている

  • 開発のメインラインとしてのトランク(trunk)
  • 完成したコードをまとめるブランチ(branches)
  • プロジェクトのイベントを記録するタグ(tags)
複数のプロジェクト

複数のプロジェクトは、1つのリポジトリでツリーを分けて管理するのも良いし、複数のリポジトリで管理しても良い。どちらにしても、どちらかに後から変更することは簡単なので悩む必要はない。本書では1つのまずはリポジトリだけを使う方法が薦められている。

第9章タグとブランチの使用

タグとブランチはいろいろな使い方があるが最初はこのような目的にだけ使うのが良い。

  • ブランチ
    • リリースブランチ(RB-rel)
    • バグ修正ブランチ(BUG-track)
    • 開発者の実験ブランチ(TRY-initials-desc)
  • タグ
    • リリースタグ(PREL-rel)
    • バグの修正前と修正後のタグ(PRE-track POST-track)

カッコ内は命名方式の例

リリースブランチの作成

ソフトウェアのリリースが近くなったらリリースブランチを作り仕上げを行う。リリースブランチでのバグ修正などはトランクにマージする。

svn mkdir -m "creating branche" svn://example/sesame/branches
svn cop@y -m "creating RB-1.0" svn://example/sesame/trunk svn://example/sesame/branches/RB-1.0

ブランチの作成は効率のため、リポジトリ上で行うのが良い

まとめ

subversionの話はsubversionの仕様の話と、慣習の話がごっちゃになっていることが多くて分かりにくい。
特にtrunk,branche,tagなどはすべて単にリポジトリ内での1つのツリーにすぎないのに、本書を読んでいてもタグはスライスだとか、「リリースブランチを作るには?」などと、あたかも特別なものかのような説明がされている。

Subversion実践入門:達人プログラマに学ぶバージョン管理(第2版)

Subversion実践入門:達人プログラマに学ぶバージョン管理(第2版)