次のようなツリーがあります:
(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
コミットにリベースします。