2009-07-28 1 views
1

チームの一部は、次のリリース/スプリントに取り組んでいます。残りはテストに取り組み、以前のスプリントをリリースしてからプロダクションにリリースしました。タイミングのリリースブランチ

次のリリースに取り組んで一部が今のブランチを望んでいる、彼らは私たちとすぐ支店などの修正をマージ開始する必要がありますので、他の部分はできるだけ遅く、それを望んでいます。

私たちはまだ分岐していないので誰かがコミットするのを待っているのが好きではありません。私はまた、合併を理解していない人の時間を無駄にしたくない。 (そしてSVNは名前をマージしません)

意見や提案はありますか?おかげ

注:私たちはブランチ/マージ操作を行うことから、GUIを防ぐ1.4レポで1.6 TortoiseSVNの使用していたので

これは、過去に悪化し問題でした。だから私はレポをアップグレードすることでその障害を取り除いた。少なくとも今チームメンバーがマージするのは簡単ではありません。

答えて

1

もう一つのポイント:

TRUNKに(最も積極的に使用されたコードが新しい-新しい-最新リリースに向かって1とする)プログレッシブコードを維持することを検討してください。バグフィクサーチームの使用のためにHEAD(タグ付きの場合は以前のベースラインリリース)から分岐します。彼らはバグを修正し、トランクから定期的にマージして、最新の開発からの更新を望むならば入手することができます。

一方、新しいリリースの作業はTRUNKになり、TRUNKは "現在"または "本番"の環境にあるものを常に表すように指定できます。以前のリリース用の修正をcurentリリースに戻したい場合は、bugfixブランチからTRUNKにマージすることができます。

このモデルは、次のリリースタグの後にも繰り返すことができます。

これは、バグ修正の数が少なくなるため、マージを最小限に抑えるのに役立ちます。これは、必要なときにTRUNKにマージするファイルが少ないことを意味します。ほとんどの場合(私はほとんどすべてではありません:-))ケースでは、バグフィックスのdev人の数は少ないので、これはまた、マージを必要とするファイルの数が少ないことを意味します。

HTH。

0

これらの問題には、Git/Mercurialを強くお勧めします。 :)

しかし、私はないオプションをthatsのを知っているので、私は本当にこの種の問題への100%偉大な答えは存在しないことを言うだけでしょう。一般にCVS/SVNとの分岐やマージは大量のプロセスになる傾向があるので、できるだけプロセスの最後まで分岐したくないという傾向があります。ブランチプロセスを延期することができる時間が長いほど、多くの点で優れています。しかし、新機能に取り組んでいるチームが知っているように、これは長続きするしかありません...ある時点では、新しい機能を遅らせるコストはマージを延期するメリットを上回ります。私は今の私

が、これは多くの場合、新しいバージョンのリリース前に1〜2週間(または時にはそれ以下)の枝になります。しかし、正確な時間は、リリースを推進する具体的な圧力、および今後のリリースの新機能に基づいて常に変化します。特にTortoiseSVNの最新バージョンとSVNクライアントで -

0

分岐はSVNで痛みを伴うプロセスである必要はありません。 VCSとレポの知識が必要ですが、それはソフトウェア開発者にとって必要です。

何かについて考えると、開発の各フェーズでどれくらいの新しいコードと変更が発生する可能性がありますか。通常、スプリント/リリース段階では、バグ修正段階よりも大きな変更セットが生成されます。これは、直ちにブランチして、バグ修正の数が少ないほど合併する方が合理的であることを意味します。ほとんどの場合、分岐するのを待つと、より厄介なマージが発生します。早期の分岐

はまた、彼らはユニットや新機能のための機能テスト中に疾走開発者が行使できるよう、あなたのバグがより多くの露出を修正できます。より多くの露出=より良いバグのない修正。あなたは次のリリースに取り組んでチームはあなたがベッドに置くしようとしているものを破るし続けないように枝をしなければならないのリリースのための機能フリーズに入るたら

0

。ブランチをこれ以上延期しようとすると、より多くの問題が発生します。

フィーチャブランチを使用すると、これは簡単になります。すべての修正はトランクで実行されます。RCブランチをリリースする場所を確保し、テストリリースの前にトランクからトランクへの卸売りマージを行うことができます。トランクからマージされたブランチを特徴とし、機能の準備ができたらトランクにマージされます。これは、より多くのマージをもたらすように思えますが、すべてのマージを非常にシンプルに保ちます。

これは、DVCSで取得するワークフローと似ていますが、すべてのブランチが開発者のマシンに広がっているのではなく、見通しのよい場所にあることが異なります。あなたの検討のための

0

可能な限り遅くなります。

関連する問題