Git で管理されている、プロジェクトの未完成の機能のトピック ブランチを作成する作業に取り掛かりました。それらはすべて、1 つのトピック ブランチが別のトピック ブランチに直接関係しないように、非常に自己完結型です。ただし、すべてのブランチにはシステムのコアであるマスター ブランチという共通点があり、トピック ブランチはマスター ブランチの機能を拡張するだけです。
私が正しく理解していれば、マスター ブランチでトピック ブランチに影響を与える何かを行った場合 (たとえば、コアと個々の機能の間の通信に使用される API を変更するなど)、その変更はトピック ブランチに反映されません。自動的に、ブランチがそれに応じて修正されるようにします。変更は手動でマージするか、他のブランチにチェリー ピックする必要があります。
サブモジュールを使用するとこれが達成されることを理解しています。ただし、サブモジュールを使用すると、主に機能が自立していないため、メイン プロジェクトと機能プロジェクトになる可能性があるプロジェクトとの間の分離が大きくなりすぎます。彼らはコアに依存しています。
したがって、私が探しているのは、特定のファイル/ディレクトリが特定のブランチに固有のものであり、それ以外はすべてメインブランチからのものであると言う何らかの方法です。Photoshop の用語で言えば、マスターを背景レイヤーにして、各トピック ブランチをその上に部分的に透明なイメージ レイヤーにし、独自のコンテンツを配置します。