2つのC#プロジェクトがあります...共通プロジェクトとWEBUIプロジェクトです。それらは両方とも別々のリポジトリにあります。
Common ProjectはUIプロジェクトを参照し、作業するときは常にCommon Projectで作業し、UIプロジェクト内から変更を加えます。
問題は、プルするときに、常に2つの別々のプロジェクトからプルする必要があることです。これにより、誰かが他のリポジトリからプルするのを忘れたためにローカルビルドが失敗し始めると、混乱が生じる可能性があります。
サブモジュールとサブツリーマージ戦略を試しました。Commonプロジェクトをメインプロジェクト(これから親と呼びます)として使用し、UIプロジェクトをサブプロジェクト(これから子と呼びます)として使用しました。次に、参照を親から子に変更して、サブツリー/サブモジュールを含むサブディレクトリを指すようにしました。残念ながら、子プロジェクトに変更を加えても、コミットとプッシュを実行するときに上記の2つの戦略のいずれかを使用しても、親プロジェクトにプッシュバックされません。サブツリーとサブモジュールが実行するのは、親リモートリポジトリからプルするたびに、ローカルの子UIリポジトリに自動的にプルすることだけであるように見えます。
親からプッシュすると、子からの変更もプッシュするようにする方法はありますか?