1

これは、Java ベースの製品の場合、SVN 構造がどのように見えるかです。

\branches
   \clientA
\trunk
\tags

クライアント 特定のclientA製品のカスタマイズがブランチで行われています。リリース用のカスタマイズが完了すると、ブランチにタグが付けられてリリースされます。これらの変更はクライアント固有の変更であるため、これらの変更を にマージするつもりはありません。Trunk

たとえば、私はリリースを作成しましたMyProduct-ClientA-REL-v1.0クライアント Aは、より多くの機能や拡張機能を要求します。そのため、同じブランチで開発を続け、次のリリースに向けて準備を進めています ( MyProduct-ClientA-REL-v1.1)。このリリースの開発中に、クライアント Aが戻ってきて、以前のリリースでバグに遭遇したと言います。

私は今何をしますか?たとえば、v1.0 コードの同じブランチであまりにも多くのことを変更しました (削除されたファイル)。

質問は理にかなっていますか?

4

1 に答える 1

2

私がすること。

リリース時に clientA タグをエクスポートします (タグを作成しなかった場合は、どのリビジョンと同等かを調べるために調査を行う必要があります)。また、以前にタグを作成していない場合は、リビジョンを見つけた後にタグを作成するのが良いタイミングです。

これで、そのリリース バグ用の追加のブランチを作成します。修正を行い、指定されたブランチにコミットします。リリース バージョンとの差分を取得し、クライアントのメイン ブランチで修正します。

他のカスタマイズについては、ブランチ 'ClientX' を作成し、そこでトランク/ブランチ/タグ構造を再作成することをお勧めします。

于 2012-08-16T09:09:18.573 に答える