私の職場では、デプロイとコードの変更を処理するために、Git に基づいたワークフローを設計しようとしています。
Java EE Web アプリケーションと 3 つの展開環境 (テスト、QA、および本番) があります。ビルドとデプロイを処理するための Jenkins CI のインスタンスもあります。
(ブランチで) アプリケーションのコードに変更が加えられた場合、どれを QA および Production に昇格させるかを選択できる必要があります。一部のユーザーは、QA に到達した後、本番環境に移行することはありません。
また、プロモートやマージの際に、誤って他の人のコードをブランチに含めないようにする必要もあります。
ブランチの「プロモーション」も自動化する必要があります。アナリストがブランチまたは変更セットを選択し、ジェンキンスまたはその他のスクリプトが実際のマージとデプロイを行うようにします。ここでマージの競合が問題になっていることがわかります...
これらの要件を処理するために、Git リポジトリをどのように設定することをお勧めしますか?