git worktree
git
Uso
git worktree add <path> [<branch>]Saca una segunda carpeta de trabajo del mismo repositorio para trabajar en dos ramas a la vez sin clonar otra copia; la misma rama no puede estar en dos, y borrar la carpeta a mano deja una entrada hasta prune.
Opciones habituales
| Opción | Significado |
|---|---|
| add <path> <branch> | check that branch out into another folder |
| add -b <new> <path> | create a branch and check it out there |
| list | show every working tree of this repository |
| remove <path> | delete a working tree cleanly |
| prune | forget trees whose folder you deleted by hand |
| --detach | check out a commit without a branch |
Ejemplos
git worktree add ../hotfix hotfix/logina second folder on another branch, sharing one .git
git worktree add -b release ../rel maincreates release from main in ../rel
git worktree remove ../hotfixremoves the folder and its bookkeeping entry
Lo confuso es que deshacer tiene varias formas: mover a dónde apunta una rama no es lo mismo que añadir un commit que la revierte.
Cómo leerlo
- Los corchetes [ ] marcan una parte que puedes omitir.
- Los puntos suspensivos … indican que puedes poner varios.
- Las opciones distinguen mayúsculas: en algunos comandos -r y -R no hacen lo mismo.
Preguntas
Q. ¿Qué hace git worktree?
Saca una segunda carpeta de trabajo del mismo repositorio para trabajar en dos ramas a la vez sin clonar otra copia; la misma rama no puede estar en dos, y borrar la carpeta a mano deja una entrada hasta prune.
Q. ¿Cómo se escribe?
git worktree add <path> [<branch>] — los corchetes marcan lo que puedes omitir.
Q. ¿Cuántas opciones vale la pena saber?
Aquí van 6; la lista completa está en man git. Este comando está en git.
Comandos relacionados
página man: man git-worktree