1

私は 1 つの開発ブランチといくつかの機能ブランチを持っています。Atlassian でこの git ワークフローを見つけました。モデレーターを除くすべての開発者が dev ブランチを読み取り専用にするという考え方です。すべての開発者は、機能ブランチ以外でのみ作業します。しかし、ここに問題があります -

開発者 A が機能ブランチ A (FB-A) の作業を開始します。Dev ブランチはその間に進行します。開発者 A は FB-A での作業を終了し、コードをコミットして FB-A にプッシュします (コミット #1)。次に、Dev から FB-A へのプルを実行して、最新のものを取得します。Dev からのすべての変更は、FB-A に追加/変更されます。次に、これらのファイルをコミットして FB-A にもプッシュします (コミット #2)。これで、ファイルを dev ブランチにマージする準備が整いました。やろうとしたところ、Commit #1 と Commit #2 をコミットします。これは通常の慣行ですか?

開発者の実際の変更があるため、最初のコミットのみを Dev にマージすることは可能ですか? ここで何か不足していますか?

4

1 に答える 1

0

あなたの説明から、コミット#2はマージコミットのようです。にマージするまでに にマージしたことがdevある場合は、マージの競合がほとんどまたはまったくない可能性が高いため、これは良い方法です。コミット #2 には、更新をマージする方法に関する重要な情報が含まれているため、マージ コミットを保持するのが通常の方法です。また、このマージ コミットがブランチにマージされたときにブランチに到達することも正常です。FB-AFB-AdevdevFB-AdevFB-Adevdev

注:にマージする前にコミット #2 を削除したい場合でも、dev競合を解決するために別のマージ コミットを作成する必要があります。

于 2013-11-04T06:04:10.740 に答える