Git es una herramienta muy poderosa y un gran poder conlleva grandes responsabilidades. Si no se usa y maneja correctamente, podría hacer que pierda sus confirmaciones. Puede haber situaciones en las que puede encontrar que falta todo su trabajo a la vez.
Si ha confirmado regularmente su trabajo, hay una forma de recuperar estas confirmaciones perdidas .
Este tutorial tendrá como objetivo el uso de la
git reflog
y el
git cherry-pick
Comandos para recuperar tus confirmaciones perdidas en Git.
Nota: El uso del registro de referencia solo funcionará durante un cierto período de tiempo después de que se pierdan las confirmaciones. Git limpia el reflog periódicamente, ¡así que no esperes demasiado!
Procedimiento
El primer paso para recuperar sus confirmaciones perdidas es recuperar la lista de todas sus confirmaciones y acciones anteriores realizadas en el repositorio.
Nota: Tenga en cuenta que las firmas y los hashes de confirmación proporcionados pueden diferir de los de su repositorio local. Reemplace toda la información relevante con la información correspondiente a su registro.
Ejecute este comando
git reflog
Después de ejecutar el comando, esto es lo que verá como resultado.
$ git reflog c9f9669 HEAD@{0}: commit: Fixed test cases to run on Unix b3ca8a4 HEAD@{1}: pull: Fast-forward 54ba188 HEAD@{2}: pull origin master: Fast-forward e659a21 HEAD@{3}: reset: moving to HEAD~1 12944d8 HEAD@{4}: reset: moving to HEAD~1 6f40152 HEAD@{5}: reset: moving to HEAD~1 3de61ba HEAD@{6}: pull: Fast-forward e659a21 HEAD@{7}: reset: moving to HEAD^1 12944d8 HEAD@{8}: reset: moving to HEAD^1 6f40152 HEAD@{9}: reset: moving to HEAD^1 3de61ba HEAD@{10}: commit: Removed Query object 6f40152 HEAD@{11}: pull: Merge made by the 'recursive' strategy. 12944d8 HEAD@{12}: commit: API touchups --- We want to recover this commit. e659a21 HEAD@{13}: commit: Test enhancements 07419e1 HEAD@{14}: pull: Fast-forward
Encuentre el Hash del compromiso que desea recuperar, por ejemplo, 12944d8 .
Ahora use el siguiente comando para recuperar su compromiso perdido.
git cherry-pick 12944d8
Confirmación recuperada
¡Eso es todo! Su trabajo debería recuperarse pronto con los siguientes comandos de éxito:
Finished one cherry-pick. [master 12944d8] API touchups 3 files changed, 36 insertions(+), 3 deletions(-)
En caso de un conflicto de fusión
Si hay un conflicto de combinación, aparecerá el siguiente mensaje.
error: could not apply 12944d8... API touchups hint: after resolving the conflicts, mark the corrected paths hint: with 'git add ' or 'git rm ' hint: and commit the result with 'git commit'
usar el comando git status puede ayudarlo a identificar lo que debe hacerse.
Publicación traducida automáticamente
Artículo escrito por ashertb2000 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA