Hola Melissa, te explico la situación aquí. Si no me expreso claramente, por favor dímelo con confianza y trataré de explicarlo mejor.
El comando “git reset 555a68e” tiene varias variantes. Cuando se utiliza tal cual, por defecto se ejecuta como “git reset –mixed 555a68e”. Esto no significa que elimine el commit; más bien, regresa a ese commit y elimina los posteriores. Por esta razón, se observa que se eliminó el commit “6ba9f10” y se regresó al “555a68e”. Es importante destacar que esto no elimina los cambios en los archivos; estos archivos ahora pasan a ser cambios sin registrar, y se registrarán en el nuevo commit que realices.
Lo que te estoy comentando también se puede observar al realizar el “git reset 33f67e0” y notar que no ocurre ningún cambio, ya que ese es tu último commit, por lo tanto, permanece en el mismo lugar.”
Imagina que lo que hace git es realmente crear una línea del tiempo, y si lo comparamos con la vida real, sería algo así:
“En 2010 terminé la preparatoria (Commit 1), en 2015 terminé la universidad (Commit 2), y en 2016 inicié mi primer trabajo profesional (Commit 3).”
Ahora imagina que estoy en 2018 y hago un “git reset Commit 2”; si esto eliminara ese registro, habría una inconsistencia en mi historia. ¿Cómo pasé de la preparatoria a un trabajo donde se requiere título universitario sin terminar la universidad?
Lo que hace el “git reset Commit 2” es regresarte a ese punto en el historial, eliminando el registro del Commit 3. Lo positivo es que no se borrará tu trabajo desde 2016, simplemente aún no está registrado. Pero, como ya estamos en 2018 y tienes tu segundo empleo como profesional, al hacer un nuevo commit se guardará tanto lo que habías hecho anteriormente como lo nuevo. Entonces se verá algo así:
“En 2016 inicié mi primer empleo profesional y en 2018 dejé mi trabajo anterior por uno nuevo, mi segundo empleo como profesional. (Commit 3).”
Ahora, si realmente deseas eliminar un commit, también es posible hacerlo. Sin embargo, otro commit debe registrar los cambios del que estás eliminando para mantener la coherencia de la historia. Posiblemente esto lo verás más adelante, pero quiero mencionarte que el comando “git rebase” es el que permite “reescribir la historia”. Puedes leer un poco más sobre esto aquí: ¿Para qué sirve el comando o parámetro rebase en Git? – Stack Overflow en español
¡Saludos!
Report
There was a problem reporting this post.
Block Member?
Please confirm you want to block this member.
You will no longer be able to:
See blocked member's posts
Mention this member in posts
Invite this member to groups
Message this member
Add this member as a connection
Please note:
This action will also remove this member from your connections and send a report to the site admin.
Please allow a few minutes for this process to complete.