ToolsXpo
Workspace & BillingToolsXpo CodeGuides

Worktrees: running tasks in parallel

Give each task its own git checkout so several can run at once without colliding. Off by default, and why.

Updated September 2, 2026

A git worktree is a second checkout of the same repository in a different folder. ToolsXpo Code can create one per task, so several tasks run at once without editing the same files.

Off by default.

Why you would want it

Two agents in one working tree fight. One edits a file the other is reading; a test run picks up half-finished changes from an unrelated task. Worktrees give each task a checkout of its own.

Useful when you want to try two approaches to the same problem and compare, or work on an unrelated fix without disturbing a long task already running.

Why it is off by default

It creates real directories on disk, outside your workspace folder. That is a thing to opt into knowingly rather than discover.

It also assumes a git repository with a reasonably clean structure. On a project with heavy build artefacts or large untracked directories, a new worktree can be slow and large.

Settings → Editor → Worktrees.

.worktreeinclude

Untracked files are not copied to a new worktree by default — which is usually right, and occasionally wrong. A .env your build needs is untracked, and its absence breaks the worktree in a confusing way.

List those paths in .worktreeinclude at your repository root and they are carried across.

Cleaning up

Worktrees are listed in the Worktrees view, where you can open one in a new window or remove it. Removing offers to delete the branch too — read that prompt, since the branch may hold work you want.

See also

worktreesgitparallel

Related