Revisando un Commit Específico con Git Checkout
Otra funcionalidad retenida por git checkout
es la capacidad de revisar (check out) un commit específico. Esto te coloca en un estado de "detached HEAD" (HEAD desacoplado), permitiéndote inspeccionar el proyecto en ese punto de la historia. git switch
no tiene esta capacidad.
Primero, encontremos el hash del commit (commit hash) del commit inicial.
Asegúrate de estar en el directorio del proyecto:
cd ~/project
Visualiza el historial de commits:
git log --oneline
Verás una salida similar a esta, con los hashes de los commits:
<commit_hash_development> (HEAD -> development) Initial commit
<commit_hash_main> (main, feature-branch) Initial commit
Ten en cuenta que los hashes de los commits serán diferentes en tu entorno. Copia el hash del commit para el "Initial commit".
Ahora, usa git checkout
seguido del hash del commit para revisar ese commit específico. Reemplaza <commit_hash>
con el hash real que copiaste.
git checkout <commit_hash>
Verás una salida indicando que estás en un estado de detached HEAD:
Note: switching to '<commit_hash>'
You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by switching back to a branch.
If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -c with the switch command. Example:
git switch -c <new-branch-name>
HEAD is now at <commit_hash> Initial commit
Ahora estás viendo el proyecto tal como estaba en el momento del commit inicial. Para regresar a una rama (branch), puedes usar git switch
o git checkout
para cambiar de nuevo a una rama como development
o main
.
Volvamos a la rama development
usando git switch
:
git switch development
Verás una salida confirmando el cambio:
Switched to branch 'development'
Has utilizado con éxito git checkout
para explorar un commit específico y luego has regresado a una rama usando git switch
.