5

コミットされた現在の開発、または現在のバージョンからの変更を含まないバグパッチを発行する必要がある場合、プロセスをより安全に、より低いオーバーヘッドで行うために何をすべきですか?

現在、主にVisual Studio 2008で開発している小規模(3人の開発者)チームのソース管理にSubversionを使用しています。チームは、来年中に8人の開発者にグループ化され、以前のリリースのサポートはさらに複雑になると予想されます。ほとんどのお客様は現在のリリースを使用していますが、一部のお客様はさらに遅れています。

4

3 に答える 3

6

ソース管理はこれを非常に簡単に処理でき、このために設計されました。

リリースの安定化期間に達したら、ブランチを実行する必要があります。これを行う前に、次のリリースで作業を開始しないことが重要です。

そのリリースのバグ修正は、そのブランチで行う必要があります。これにより、今後のリリースの新しいコードがバグ修正を汚染するのを防ぎます。バグ修正が完了したら、その変更をトランクにマージし、必要に応じて他のリリースにマージできます。

コメントにバグ番号を入れることを忘れないでください。これにより、コミットの追跡が容易になります。

于 2008-10-20T17:37:18.033 に答える
3

どうですか:メジャーバージョンごとのブランチ。必要に応じてブランチにバグ修正が適用され、トランクに適用(またはマージ)されます。

于 2008-10-20T17:36:18.720 に答える
0

私が働いている場所では、いくつかのプロジェクトが同時に働いています。この問題を回避するために、ソースコードにはいくつかのバリエーションがあります。たとえば、最初のリリースはVariant1.0です。今後のすべての開発のために、このリリースからブランチ、たとえばVariant2.0を作成します。バグ修正を行う必要がある場合は、メインのVariantで行います。現在は1.0であり、これをリリースできます。Variant 2.0を本番環境に移行する準備ができたら、メインブランチ(この場合は1.1)にあるものとマージし、それが新しいメイントランクになります。ある時点で、4つのブランチが同時に実行されていました。

コードのマージには時間がかかる可能性があり、マージ中に新しいバグが発生しないように注意する必要がありますが、適切なコード比較ツールが利用できる場合は、それほど悪くはありません。10,000ファイルのソースディレクトリでBeyondCompareを使用してしばらく前にマージを実行しましたが、1朝かかりました。

于 2008-10-20T17:39:44.627 に答える