Skip to Content

FAQ

Why use Git worktrees instead of stashing?

Worktrees let you keep multiple branches checked out simultaneously in separate directories. This avoids repeated stash/apply cycles and reduces context-switch overhead.

Does this modify my main repository history?

No. Worktrees are alternate checkouts that still point to the same underlying Git repository.

Can I use this with private GitHub repositories?

Yes. Any repository you can clone and operate with Git locally can be managed.

Is there a required branch naming scheme?

No hard requirement, but a team naming convention (for example feature/*, fix/*, chore/*) makes list and cleanup flows easier.

Which editor can I open worktrees in?

Any editor command that can open a directory. Configure your preferred command with:

worktree config codeEditor <command>

The value is the executable plus any arguments, run without a shell. See Editor Integration.

Can I open worktrees somewhere other than an editor?

Yes. Set opener to herdr to have each worktree land as a Herdr  space instead:

worktree config opener herdr

See Herdr Spaces.

To open it nowhere, set opener to none. The command prints Worktree created at <path> and stops, without starting an editor or Herdr.

worktree config opener none

What happens to a Herdr space when I remove the worktree?

It is closed with it. worktree remove and worktree cleanup close the space of every worktree they delete, so you are not left tidying up spaces with no checkout under them.

Only worktrees that were actually removed. One held back — for uncommitted changes, a live agent, or unpushed commits — keeps its space, and so does a removal you declined — in each case the checkout is still on disk. If Herdr cannot be reached the close is a warning and the command still exits 0, because by then the worktree is already gone.

See When the worktree goes.

Does worktree run on Windows?

It is developed and tested on macOS and Linux only. Windows is not supported.

Where can I see all command options?

Use the command reference pages under /docs/commands and run:

worktree --help worktree <command> --help
Last updated on