Normalmente un repositorio tiene un solo directorio de trabajo, y
cambiar de rama sobrescribe su contenido. git worktree permite
tener varios directorios de trabajo simultáneos, cada uno
con una rama distinta activa, todos compartiendo la misma base de
datos de objetos.
git worktree add ../revision-urgente hotfix-branch
Esto crea un nuevo directorio ../revision-urgente con la rama
hotfix-branch activa, sin tocar el directorio de trabajo
principal ni requerir un segundo clon completo del repositorio (que
duplicaría todo el historial en disco).
Es útil cuando hace falta atender algo urgente en otra rama sin
perder el estado —cambios sin confirmar, archivos generados,
servidores de desarrollo corriendo— del trabajo actual, evitando el
viejo hábito de guardar cambios con git stash solo para poder
cambiar de rama temporalmente.
git worktree listLista todos los worktrees asociados al repositorio.
git worktree remove rutaElimina un worktree ya innecesario.
Cada worktree tiene su propio HEAD y su propio índice, pero
comparten refs, configuración y la base de datos de objetos
completa.