このWebアプリ製品は複数の顧客に展開されており、svnからMercurialへの切り替えを検討しています。svnでは、トランクをプロジェクトの「コア」と見なし、ブランチは顧客ごとに設定されます。
今、私は最高のレポレイアウトがMercurialで何であるか疑問に思います。
プロジェクトが基本的に3つのメインフォルダで構成されているとしましょう:html
、、。 css
js
内容はお客様間で同じですが、 &/html
にはカスタマイズがあります。
現在、これらのカスタマイズは、などの個別のファイルに存在するため、修正/変更からコア/共通ファイルまで、実際の目的に応じたカスタマイズを明確に伝えることができます。/css
/js
skin.css
次に、SVNを使用すると、顧客のブランチからトランクに変更を部分的にコミットできるため、顧客のプロジェクトに取り組んでいる間にグローバルなものを修正できます。私が理解しているように、部分的なコミットは現在、Mercurialではサポートされていません。
では、この状況に水銀でどのようにアプローチするのが最善でしょうか?1つの中央コアリポジトリ(おそらくリリースブランチを含む)を用意し、顧客プロジェクトを個別の(リモート)リポジトリとして複製する必要がありますか?コアブランチとカスタマーブランチのすべてを1つのリポジトリ内に配置する方がよいでしょうか。
ポインタをありがとう!