git checkout
git checkout: cambia a una rama o restaura archivos del directorio de trabajo.
Nota: Este comando ha pasado a usarse menos en favor de comandos más específicos como git switch y git restore, introducidos en Git 2.23 (agosto de 2019). Estos comandos nuevos buscan que Git sea más intuitivo y reducir el riesgo de perder datos por accidente.
git checkout permite cambiar entre ramas, restaurar archivos y cargar commits concretos. Sin embargo, las versiones recientes de Git reparten muchas de estas funciones entre dos comandos más específicos: git switch y git restore.
git checkout se usa sobre todo para cambiar de rama o devolver archivos a un estado anterior. El cambio entre ramas facilita trabajar en varias funcionalidades o correcciones a la vez. La restauración de archivos permite descartar cambios cuando una prueba sale mal o te equivocas.
- Échale un vistazo a este peculiar hilo en StackOverflow para descubrirlo. En inglés,
check out
también significa “echar un vistazo”.
Ejemplos
Cambiar a una rama existente:
git checkout feature-branchCrear una rama nueva y cambiar a ella al momento:
git checkout -b new-featureRestaurar un archivo al estado del último commit. El separador especial -- indica a Git que todos los argumentos siguientes son rutas de archivo y evita que las confunda con una rama o un commit:
git checkout -- path/to/file.jsCambiar a un commit concreto, entrando en estado detached HEAD, es decir, sin estar en una rama:
git checkout 1a2b3c4dSin embargo, en versiones más nuevas de Git (2.23+), se recomienda usar git switch para cambiar de rama y git restore para restaurar archivos. Separar responsabilidades hace que los comandos sean más intuitivos y menos propensos a errores.
Cambiar a una rama existente (Git 2.23+):
git switch feature-branchCrear una rama nueva y cambiar a ella (Git 2.23+):
git switch -c new-featureRestaurar un archivo al estado del último commit (Git 2.23+):
git restore path/to/file.jsEn resumen: aunque git checkout sigue usándose mucho y todavía tiene soporte, es buena práctica empezar a usar git switch y git restore para acciones más claras y específicas en tu flujo de Git. Así evitas confusiones y errores, sobre todo si Git todavía te suena nuevo.
.gitignoregit checkoutgit configgit taggit worktree