ブランチベースを変更する 質問する

ブランチベースを変更する 質問する

次のようなツリーがあります:

(commit 1) - master
                \-- (commit 2) - (commit 3) - demo
                                                \-- (commit 4) - (commit 5) - PRO

PROブランチをマスターに移動する必要があります

(commit 1) - master
                |-- (commit 2) - (commit 3) - demo
                \-- (commit 4) - (commit 5) - PRO

PRO ブランチから試しましたgit rebase masterが、何も起こりません。

明確にするために、私はマスターで作業していて、製品のデモ (git checkout -b demoおよびいくつかのコミット) を作成する必要がありました。その後、誤ってデモ (およびいくつかのコミット) から別のブランチを作成しgit checkout -b PRO、PRO ブランチをマスターに移動して、デモをそのまま残す必要があります。最終的には、デモと PRO の両方がマスターからハングすることになります。

ベストアンサー1

newBaseコミットを移動したいブランチが、oldBaseブランチの古いベースであると仮定すると、次のように使用できます。--ontoそのために:

git rebase --onto newBase oldBase feature/branch

あなたのケースでは、

git checkout PRO # Just to be clear which branch to be on.
git rebase --onto master demo PRO

demo基本的に、以降から までのすべてのコミットを取得しPRO、それらをmasterコミットにリベースします。

おすすめ記事