Inicio·Comandos de terminal

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ónSignificado
add <path> <branch>check that branch out into another folder
add -b <new> <path>create a branch and check it out there
listshow every working tree of this repository
remove <path>delete a working tree cleanly
pruneforget trees whose folder you deleted by hand
--detachcheck out a commit without a branch

Ejemplos

git worktree add ../hotfix hotfix/login

a second folder on another branch, sharing one .git

git worktree add -b release ../rel main

creates release from main in ../rel

git worktree remove ../hotfix

removes 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