Respostas:
Se você deseja que todas as alterações sejam master
in dev_branch
, então:
git checkout dev_branch
git reset --hard master
Isso funciona apenas se outras pessoas não clonaram o repositório.
Se você já dev_branch
enviou para um controle remoto, precisa:
git push --force
Para empurrar com força para o controle remoto. Aviso: Isso quebrará o histórico do ramo para as pessoas que o clonaram antes! Em seguida, outras pessoas vão ter que fazer um git pull --rebase
no dev_branch
para obter as alterações.
Você também pode renomear o ramo dev para algo antigo e criar um novo ramo master
com o mesmo nome:
git branch -m dev_branch old_dev_branch
git branch -m master dev_branch
Ou use a ours
estratégia - não sei por que ela não funcionaria para você:
git checkout master
git merge -s ours dev_branch
git checkout dev_branch
git merge master
dev_branch
para a origem (se ela tivesse uma) e também não terá mais umamaster
filial localmente.