Trabalhando com git, depois de alguns 'commit' e alguns 'push', percebi que estou usando o branch errado!
Agora eu tenho que remover de alguma forma minhas alterações em wrong_branch e confirmar e enviar as alterações em right_branch
Qual é a melhor (e simples) maneira de fazer isso?
obrigado
Respostas:
mude para aquele branch, verifique o
git log
egit revert
aqueles commits individualmente. Depois de fazer isso, volte para o branch desejado e lá você pode usargit cherry-pick
para escolher commits específicos dos refs do git e mesclá-los no branch correto.Se os commits estão agrupados e não há commits enviados após seus commits sujos, você pode até mesmo usar
git reset
para colocar aquele branch errado em um estado antes de seus commits e então seguir isso novamente usandogit cherry-pick
para colocar seus commits no branch certo.fonte
git cherry-pick commitsha1 commitsha2
.A maneira mais simples é usando
git rebase
. Suponha que você tenha essa configuração:Você deseja mover a mudança C3, C4 para o ramo direito.
Agora a configuração é
Em seguida, você deve empurrar seus resultados com força (SE ninguém tiver sincronizado com seu repo remoto ainda):
fonte
git push -f
usar melhorgit push --force-with-lease
. Pelo menos, ele garante que a referência remota será atualizada apenas se ninguém enviar outros commits além de seus commits.Um pequeno atalho adicionado à resposta de Dhruva
fonte