Para recibir los nuevos commits
git fetch
Reiniciar
Puede restablecer el commit para una sucursal local usando git reset
.
Para cambiar la confirmación de una sucursal local:
git reset origin/master --hard
Sin embargo, tenga cuidado, como dice la documentación:
Restablece el índice y el árbol de trabajo. Cualquier cambio en los archivos rastreados en el árbol de trabajo desde <commitir> se descartan.
Si realmente desea conservar los cambios que tiene localmente, --soft
reinicie en su lugar. Lo cual actualizará el historial de confirmación de la rama, pero no cambiará ningún archivo en el directorio de trabajo (y luego puede confirmarlo).
Rebase
Puede reproducir sus confirmaciones locales sobre cualquier otra confirmación / ramificación utilizando git rebase
:
git rebase -i origin/master
Esto invocará rebase en modo interactivo donde puede elegir cómo aplicar cada confirmación individual que no está en el historial sobre el que está rebase.
Si las confirmaciones que eliminó (con git push -f
) ya se han incluido en el historial local, aparecerán como confirmaciones que se volverán a aplicar; tendrían que eliminarse como parte del rebase o simplemente se volverán a incluir en el historial para la sucursal y reaparecer en el historial remoto en el siguiente impulso.
Use la ayuda git command --help
para obtener más detalles y ejemplos sobre cualquiera de los comandos anteriores (u otros).
git checkout master && git branch -D test && git checkout -b test origin/test