He estropeado completamente la rama maestra de mi repositorio de git bifurcado.
Quiero restablecer completamente la rama maestra que se envió a mi bifurcación con el contenido del repositorio maestro ascendente. No tengo interés en retener ningún cambio o historial de la rama principal.
El enfoque más simple habría sido eliminar mi repositorio bifurcado y reformar del proyecto anterior. Sin embargo, tengo trabajo en otras ramas empujadas que no quiero perder.
Entonces, ¿cómo reinicio mi rama maestra empujada con el maestro aguas arriba?
git clone https://myrepo.git
cd myrepo
git remote add upstream https://upstream.git
git fetch upstream
¿A dónde voy desde aquí para restablecer mis ramas maestras locales y remotas con el maestro ascendente?
git reset --hard upstream/master
para restablecer el directorio de trabajo. Sin embargo, su respuesta es correcta.git fetch upstream
primerogit fetch upstream
normalmente se produce el siguiente error no legible por humanos:"fatal: ambiguous argument 'upstream/master': unknown revision or path not in the working tree."
Esto restablecería su rama maestra con el maestro ascendente y si la rama se ha actualizado desde su bifurcación, también extraería esos cambios.
PD: Suponiendo que Upstream es el repositorio original, mientras que el origen es su copia.
fuente
He probado el método como este:
la salida mostrará una advertencia:
Entonces la forma correcta se pone
git pull
antesgit reset
:entonces la salida será así:
fuente