統合テストとして、マスターとマージする前にいくつかのブランチに参加したいと思います。
それらはすべてマスターから分岐し、独自の方法を作成します。直接的な関係(親/子など)のない異なるブランチをマージするのは正しいですか??
ブランチに再参加するための良い習慣はありますか??
前もってありがとう、ラウル。
統合テストとして、マスターとマージする前にいくつかのブランチに参加したいと思います。
それらはすべてマスターから分岐し、独自の方法を作成します。直接的な関係(親/子など)のない異なるブランチをマージするのは正しいですか??
ブランチに再参加するための良い習慣はありますか??
前もってありがとう、ラウル。
それらのブランチがすべて master から来ている場合、共通の祖先があります。
y--y--y
/
x--o--x--x--x--x--x--x
\
z--z--z
(ここでは 'o' が共通の祖先です)
その場合、統合ブランチでのマージは良いアプローチです (そのような長期間有効なブランチをリベースするには、あまりにも多くの公開履歴を書き換える必要があります)。
ブランチが本当に分離している場合、git グラフト ポイントは理論的には共通の履歴を可能にする可能性があります。「 共通の祖先なしで 2 つのブランチをマージする方法」を参照してください。.
しかし、移植点がコミットされていないため、これは理想的ではありません。
Afilter-branch
は変更を永続的にするかもしれませんが、それは履歴を書き換えます。
それらのブランチがすべてマスターからのものである場合、それらには共通の祖先があります。
ただし、質問に答えると(問題ではありません)、たとえば「サブツリー」マージ戦略を使用して、共通の祖先なしで2つの履歴、たとえば2つの異なるプロジェクトをマージすることができますgit merge
。
共通の祖先を持たないブランチを他のブランチの上にリベースするには、--root
オプションを使用する必要がありますgit rebase
。