przełącz się na tę gałąź, sprawdź git log
i git revert
te zatwierdzenia indywidualnie. Gdy już to zrobisz, przełącz się z powrotem do żądanej gałęzi i tam możesz użyć git cherry-pick
do wybrania określonych zatwierdzeń z git refs i scalenia go z odpowiednią gałęzią.
git checkout wrong_branch
git revert commitsha1
git revert commitsha2
git checkout right_branch
git cherry-pick commitsha1
git cherry-pick commitsha2
Jeśli zatwierdzenia są zgrupowane razem i nie ma żadnych zatwierdzeń wypychanych po twoich brudnych zatwierdzeniach, możesz nawet użyć git reset
tej złej gałęzi do stanu tuż przed zatwierdzeniami, a następnie wykonać to ponownie, używając, git cherry-pick
aby umieścić swoje zatwierdzenia we właściwej gałęzi.
git checkout wrong_branch
git reset commitsha3 #commit just before commitsha2
git checkout right_branch
git cherry-pick commitsha1
git cherry-pick commitsha2