# Worktrees: параллельная работа без конфликтов

Курс: Агенты, субагенты и Skills — https://zero2claude.ru/learn/agents
Канонический URL: https://zero2claude.ru/learn/agents/2-3-worktrees

git worktree даёт отдельную рабочую копию проекта, чтобы несколько агентов правили его параллельно, не мешая друг другу.

Ты решил запустить независимые куски параллельно — но есть подвох. Если несколько агентов правят **одну и ту же рабочую копию** репозитория, они спотыкаются друг о друга: переключения веток, недописанные файлы, перемешанные изменения. Решение придумано в самом git — это **worktree**.

## Что такое worktree

Worktree — это несколько рабочих копий одного репозитория в разных папках, у каждой своя ветка. История общая (один `.git`), а файлы на диске — отдельные. Значит, агент в одной папке правит ветку `feature-x`, а другой в соседней папке — `feature-y`, и они физически не пересекаются.

Создать копию на новой ветке:

```
git worktree add ../feature-x feature-x
```

Это создаёт папку `../feature-x` с рабочей копией, переключённой на ветку `feature-x`. Рядом — ещё одна для второго агента:

```
git worktree add ../feature-y feature-y
```

Посмотреть все рабочие копии:

```
git worktree list
```

Когда ветка влита и копия больше не нужна — убери папку:

```
git worktree remove ../feature-x
```

## Зачем это дирижёру

Теперь схема параллельной работы становится безопасной: каждому субагенту — своя worktree и своя ветка. Они правят один проект одновременно, но каждый в своей папке, поэтому **конфликтов рабочей копии не возникает**. Сводишь результаты обычным git-слиянием веток, когда все закончат.

Два агента, которые пишут в один и тот же файл в одной копии, — это гонка. Те же двое в отдельных worktree на разных ветках — спокойная параллельная работа. Папка-копия и есть та самая изоляция.

Эти команды показаны примерами для чтения — встроенный терминал-тренажёр платформы их не выполняет. Запускай их в настоящем git-репозитории.
