The Importance of Branching Models in SCMの履歴
http://www.accurev.com/product/docs/SCMBranchingModels1.pdf
(via. http://phpimpact.wordpress.com/2009/01/07/the-importance-of-...
Abstract
branch-by-purpose model offers better
ブランチモデルの評価
- 安定版を保守するために、開発版を使って新規開発できる
- 必要な修正がされた緊急リリースをテストするためやカスタマーに出すことができる
- 緊急リリースによる修正の労力を最小限に抑えることができる
- 必要であれば以前の製品版に戻すことができる
- 複数の連続的なバージョンをサポートしてる
- 複数の現在進行なバージョンをサポートしてる
リリースごとのブランチモデル
(The branch-by-release model)
開発版が次期のリリース版になるモデル
Build-by-bug-number syndrome
The branch-by-release modelで起きるかもしれない。古いバージョンでバグ修正したけど、もはや新しいバージョンにはコードが合わない場合、手作業で修正しなければならない
必要な修正以外するな?
目的ごとのブランチモデル(The branch-by-purpose model)
メインの開発版を継続させる。そこからテストやリリースごとにブランチが切られるモデル。build-by-bug-number syndromeを避けるためには、リリースしたものを凍結して変更できないようにして、元の開発版をチェックすれば良い。