(これは、cvs で標準開発と顧客固有の開発を管理する方法に関する私の以前の質問へのフォローアップの質問です。)
標準開発(標準ソフトウェアの開発) と顧客固有の開発mercurial
(標準ソフトウェアの顧客固有の変更の開発)を区別するために、さまざまなブランチを使用しています。
したがって、次のブランチがあるとしましょう。
- デフォルト(標準開発ブランチ)
- リビジョン1.0 (バグ修正のための標準開発ブランチ)
- リビジョン1.1 (バグ修正のための標準開発ブランチ)
- customerA (「revision1.0」からのクローンで、いくつかの変更が加えられています)
顧客 A が 1.0 から 1.1 にアップグレードしたい場合、リビジョン1.1から顧客A にプルする(そしてマージの競合を解決する) だけです。ここまでは順調ですね。
私が避けたいのは、開発者が誤って顧客固有のコードを標準の開発ブランチにマージすることです。「顧客固有のコード」は、その Java 名前空間によって識別できます。
これを行う方法はありますか?
編集:これは正しい用語であるため、「プッシュ」を「マージ」に変更しました