Nuevo en Git. Cometí un gran error con el commit de git y terminé en un commit más antiguo

Soy nuevo en Git y cometí un gran error. Git siguió instándome con

git - rejected master -> master (non-fast-forward) .

Pero, todavía me comprometí usando:

--force

Esto fue desastroso, todo el proyecto volvió a la etapa en que estaba hace aproximadamente una semana. Perdí muchos cambios. Parece que me han devuelto a un compromiso anterior. ¿De todos modos puedo volver a uno de mis commits más nuevos? Como hice una gran cantidad de cambios y necesito recuperarlos.

Use el command git reflog . El command de reajuste le dará una buena historia de lo que ha estado sucediendo en la cabeza de sus sucursales. Ejecútelo, luego encuentre la línea que se refiere al estado al que desea regresar.

Una vez que encontraste la confirmación, reinicia tu twig para que apunte a la confirmación específica.

 git reset --hard <commit_id> 

Las opciones --hard el HEAD de la twig actual al compromiso que especifique.

De tu pregunta parece que hiciste un git push --force . Esto es muy malo. No estoy seguro si esto funcionará, pero vale la pena intentarlo. Vaya por order de sugerencias y solo si una sugerencia no funciona salte a la siguiente:

  • Intente revertir el hash de confirmación que forzó a la twig master con git revert {commit_hash} . Si sientes que tus cambios han sido restaurados, haz otro git commit y git push .
  • Si lo anterior no funcionó y este fue el último commit que hiciste, puedes intentar volver a cometer un commit con git checkout HEAD~1 . Esto llevará al HEAD hacia atrás un commit. La manera más fácil de saber cuántas confirmaciones necesita volver es usar git reflog y ver qué compromiso fue el último estable. Si este estado es lo que sientes que es correcto, haz un git commit git push y un git push .

Por favor, no ignore las advertencias de git. En mi experiencia, Git solo te advierte sobre las cosas absolutamente necesarias.