Worktrees

Un worktree hace checkout de otra rama del mismo repositorio en su propia carpeta. Con un worktree por agente, varios agentes pueden trabajar a la vez en el mismo proyecto sin editar los archivos de los demás. PATerminal crea el worktree y lo abre como una sesión nueva en un solo paso.

Escrito para PATerminal v1.8.3

Crear un worktree

  1. En un panel dentro del repositorio, haz clic en Worktree en la barra del panel (también está en la lista de ramas).
  2. En Crear desde, elige Rama o Pull request.
  3. Elige la Rama base (o el pull request) e introduce un nombre en Rama nueva.
  4. Elige Dónde crearlo y, si quieres, una nota para la sesión.
  5. Pulsa Crear. Se abre una sesión nueva en la carpeta del worktree.

Dónde se crean los worktrees

Fuera del repositorio (predeterminado)
Los worktrees se agrupan en una carpeta con el nombre del repositorio, por ejemplo ~/worktrees/acme-app/feature-login. Introduce una ruta absoluta, ~ o ... Tu .gitignore no se toca.
Dentro del repositorio
Los worktrees se crean en una carpeta dentro del repositorio. Si esa carpeta todavía no está ignorada, se añade al .gitignore de la raíz (como un cambio normal del código).

Copiar archivos ignorados

Un worktree recién creado no tiene ninguno de tus archivos ignorados por git, así que normalmente aún no puede ejecutarse. Con Archivos ignorados: Copiar desde este checkout (la opción predeterminada), PATerminal copia archivos como .env, node_modules y .venv del checkout actual al worktree nuevo, con un indicador de progreso. Elige No copiar para omitirlo.

Worktree a partir de un pull request

Elige Pull request como origen para ver los pull requests abiertos (mediante tu gh). PATerminal crea un worktree en la rama del PR y lo abre como una sesión: ideal para revisar o corregir un PR mientras tu checkout principal sigue trabajando. Si ya existe un worktree para esa rama, se reutiliza.

Gestionar worktrees

La lista de worktrees de la ventana de Git muestra cada worktree con su rama y su estado (actual, principal, bloqueado, no encontrado). Elimina uno, o selecciona varios y pulsa Eliminar seleccionados. Eliminar un worktree conserva su rama; el worktree principal y el actual no se pueden eliminar. Si Git se niega por haber cambios locales, se ofrece Forzar la eliminación.

Valores predeterminados de worktree

Ajustes → Ubicación predeterminada de worktree define la ubicación predeterminada y si se copian los archivos ignorados. Activa Automatically fill in the branch name para obtener un nombre formado por la fecha, la hora y un sufijo aleatorio corto. Estos valores también se aplican cuando se crea un worktree desde una issue o desde el modo par.

¿Sigues atascado?

Consulta las preguntas frecuentes o escríbenos indicando tu sistema operativo, la versión de PATerminal y lo que has probado. Respondemos a todos los mensajes.