会社には大きなリポジトリがありますBIG-REPO私はすべてのアプリケーション、サービスツールなどのコードベースを保存しています。今私のチームはWebアプリケーションAに取り組んでいます。このアプリケーションは、BIG-REPOの他の部分に依存しています。のは、このメソッドを呼び出してみましょう、我々は我々のアプリケーションのための機能ブランチを共有しているマスターと同期する必要がある共有フィーチャブランチ
- :我々のチームで、私はプル要求にコードレビューを導入し、また、我々のアプリケーションのための安定したブランチを持つようにしたいので、私はこのワークフローを思い付きましたブランチウェブアプリケーションブランチ
- 各開発者はこのアプリケーションのいくつかの機能を開発中です。そうすると、彼はWebAppAからブランチを作成します。したがって、たとえばWebAppAFeatureAとWebAppAFeatureBなどがあります。開発者は常にブランチをリモートにプッシュし、WebAppAにPRを発行します。私はコードレビュー&マージ変更を行います。また、開発者は、WebAppAにリベースして、機能ブランチを更新します。これまでのところとても良いですか?
- しかしWebAppAは、他のチームによって開発されたリポジトリの他の部分、上の依存関係を持っているので、私達は時々私達のWebAppAブランチに(マスターに既にある)自分の変更を組み込む必要があります。そして今私が持っている質問:それを安全にする方法は?それも可能ですか?私が見
オプションは次のとおりです。
A)WebAppAにマスターをマージします。欠点:私は、コミットをマージしています。また、私がWebAppAに戻ってに戻ってマージする必要があるときに何が起こるのかも分かりません(例えば、マイルストーンが完成したときなど)。それは大丈夫/安全でしょうか?それは歴史の中で厄介に見えます:最初にマスターをWebAppAにマージします。
b)リベースWebAppAからです。私がgitの仕組みを理解しているから、これは常に変化する災害です。WebAppAそして、これは共有ブランチであるため、すべてを破壊します(Rebaseのゴールデンルール)。
私には他に考えがありません。助言してもらえますか?
他のコメントに書いたように - デポを分割して依存関係を管理するための解決策は何も議論の余地がありませんし、オプションではありません:) – dragonfly