Cara paling sederhana adalah menggunakan git rebase. Misalkan Anda memiliki pengaturan itu:
A -- B -- C -- C1 -- C2 # right branch
\
\-- D -- C3 -- C4 # wrong branch
Anda ingin memindahkan perubahan C3, C4 ke cabang kanan.
git checkout -b new_wrong_branch D
git checkout wrong_branch
git rebase D --onto right_branch
git checkout right_branch
git merge right_branch wrong_branch
git branch -d wrong_branch
git branch rename new_wrong_branch wrong_branch
Sekarang pengaturannya adalah
A -- B -- C -- C1 -- C2 -- C3 -- C4 # right_branch
\
\ -- D # wrong_branch
Maka Anda harus mendorong hasil Anda dengan paksa (JIKA belum ada yang menyinkronkan dengan repo jarak jauh Anda):
git push -f remote:right_branch