2017-12-04 7 views
0

誰かが開発ブランチをマージしましたブランチです。今すぐ次のは、の後にコミットします。です。マスターブランチと開発ブランチを同期させるには?

次のから、次のにマージされます。

私は特長1をマージする場合マスターから発散することを心配。複数の機能ブランチがあります。私はその後、次と「同期」特長2特長1をマージすることができるように

は、どのように私は、マスター「を同期させる」ん?

私はなどマージをリベースを意味する '同期' を使用してい

UPDATE:私を混乱さ何

通常背後マスターであるということです。ファイルは同じです。プルリクエストのマージのために作成されたコミットのようです。私の関心は、マスター

master: A <--B 
       \ 
next: D <--- C 

Aがマージコミットである混合発散を持っているということです。 Dはにコミットします。の後にコミットします。したがって、マスター次のにコミットされていません。それは重要ですか?

+1

しかし、ある時点(リリース?)で、 'master'に' next'をマージするのですか?だからあなたが書いたのは、通常のワークフローだと思いますかその後、問題は何ですか? –

+1

これは私には少し不明です。機能を「次へ」にマージし、次に「マスター」にマージするのは間違いです。 –

答えて

1

これは通常git flowで、気になるものではありません。

フィーチャーブランチはdevelop(お客様のケースではnext)から分岐し、ある時点(通常は新しいリリースまたはバージョンごとに)にmasterにマージしてください。 developmasterはよく似ています。 developは、ほとんどの場合、masterよりも前になります。新しいリリースまたは修正プログラムがある場合は、masterに移動する必要があります。

フィーチャーブランチをdevelopに分岐し、変更に満足したら、フィーチャーブランチをdevelopにマージします。リリース準備が整ったら、フィーチャーブランチのいずれも互いに競合していないことを確認したら、developmasterにマージすることができます。これにより、のすべての機能ブランチからの変更のうち、masterになります。

あなたの二つの枝は現在、次のようになります。

next  ------ A - 
        \ 
master ------ A -- B 

あなたはnextに機能ブランチをマージしたよう:

feature2 ----------------- 
          \ 
feature1 --------------  \ 
         \  \ 
next  ------ A - -- C --- E -- G - 
        \     \ 
master ------ A -- B --- D --- F ---- H 

は、うまくいけば、上記のASCII図は便利の数が、これを説明するのに役立ちますgyの流れを示す図GitHubで見つけることができます。

希望すると便利です。 :)

+0

ありがとうございます。 * **次の** *が** **マスター**の後ろにあることは普通ですか?ファイルは同じです。プルリクエストのマージのために作成されたコミットのようです。 – wdb

+0

これは完全に正常です。なぜなら、 'master'は既存のコードを' develop'と '結合'しなければならず、基本的に 'master'に新しい 'commit'を行います。それは基本的に追いつくだけのマスターです。すべてのファイルが 'master'と' next'の両方で同じであるとすると、心配する必要はありません。そして 'master'コミットは次回に' hotfix'ブランチを終了すると 'develop'に終わるはずです。 'master'を必要に応じて' develop'に戻すことで、 'develop'を常にスピードアップさせることができます(' master'を 'develop'に引き込む):) –

関連する問題