仕事では、12 の Java OSGi バンドルに取り組んでおり、それぞれに独自の git リポジトリがあります。長い目で見れば、すべてのバンドルは互いにかなり独立しているため、個々のリポジトリが正当化されます。
製品リリース (すべてのバンドルで構成される) を作成すると、各バンドルに新しいブランチが作成されますが、これは少し面倒です。そのため、痛みを和らげるために git-submodule を使用することを考えていました ( のようなものgit submodule foreach <cmd>
)。
したがって、必要な設定はマスター プロジェクトProduct
と、各バンドルのサブモジュールです。
Project/
BundleA/
BundleB/
BundleC/
今、私はサブモジュールについて見つけることができるすべてを読むのに数時間を費やしました. で何かを変更する場合はBundleA
、でコミットしBundleA
、プッシュし、次にサブモジュールの変更をコミットして、Project
再度プッシュする必要があることを理解しました.
これは明らかに、そもそも git-submodule が使用されるように設計された方法ではないように思えます。このように使用するのはベストプラクティスに反しますか? それとも、代替案が好まれるケースのように聞こえますか?
- 最低限の git-submodule の使用法
- 既存の「git ラッパー」を使用する:
- OSGi バンドルをバッチ処理する独自の単純な bash スクリプトを作成する
他の提案を歓迎します。