Si desea todos los cambios desde masteradentro dev_branch, entonces:
git checkout dev_branch
git reset --hard master
Esto solo funciona si otras personas no han clonado el repositorio.
Si ya dev_branchpresionó un control remoto, debe hacer lo siguiente:
git push --force
Para forzar-empujar al control remoto. Advertencia: ¡Esto romperá la historia de la rama para las personas que la clonaron antes! Luego, otras personas tendrán que hacer un git pull --rebasea dev_branchpara obtener los cambios.
También puede cambiar el nombre de la rama de desarrollo a algo antiguo y luego crear una nueva rama mastercon el mismo nombre:
git branch -m dev_branch old_dev_branch
git branch -m master dev_branch
O utilice la oursestrategia, no estoy seguro de por qué no funcionaría para usted:
git checkout master
git merge -s ours dev_branch
git checkout dev_branch
git merge master
dev_branchal origen (si tenía una), y que ya no tendrá unamastersucursal localmente.