glossar

was ist ein Git-Worktree?

TL;DR

Ein Git-Worktree ist eine zweite Arbeitskopie deines Repositorys, auf einem eigenen Branch und in einem eigenen Ordner, mit derselben Historie. So arbeitest du an zwei Branches gleichzeitig, ohne zu stashen oder zu wechseln. Für KI-Agenten ist das genau das, was den parallelen Betrieb mehrerer Agenten sicher macht, denn jeder bearbeitet seine eigenen Dateien. Pane erstellt für jedes Pane einen Worktree, füllt ihn mit deiner .env und deinen Einstellungen und entfernt ihn, wenn du das Pane archivierst.

Ein Git-Worktree ist eine zweite Arbeitskopie deines Repositorys, in einem eigenen Ordner und auf einem eigenen Branch. Er teilt dieselbe Git-Historie wie dein Haupt-Checkout, ist also schnell erstellt und braucht wenig zusätzlichen Speicherplatz. Du kannst beliebig viele gleichzeitig offen haben.

welches Problem Worktrees lösen

In einem Ordner kann nur ein Branch ausgecheckt sein. Ein Worktree fügt einen weiteren Ordner mit einem weiteren Branch hinzu.

Normalerweise ist ein Repo ein Ordner, in dem ein Branch ausgecheckt ist. Um an zwei Dingen gleichzeitig zu arbeiten, stashst du deine Änderungen, wechselst den Branch, erledigst die andere Arbeit, wechselst zurück und holst den Stash wieder. Das funktioniert, ist aber langsam und fehleranfällig.

Ein Worktree gibt dir einen zweiten Ordner, der schon auf einem anderen Branch ist. Feature A lebt in einem Ordner und Feature B in einem anderen, beide gleichzeitig offen, ohne Stashen oder Wechseln.

warum das für KI-Agenten wichtig ist

Worktrees sind das, was mehrere Agenten in einem Repo sicher macht.

Zwei KI-Agenten im selben Ordner überschreiben sich gegenseitig. Agent A bearbeitet auth.ts, Agent B bearbeitet eine Minute später auth.ts, und wer zuletzt speichert, gewinnt. Die Arbeit des anderen Agenten ist weg, und keiner von beiden merkt es.

Mit je einem Worktree hat jeder Agent seinen eigenen Ordner, Branch und seine eigenen Dateien. Beide können gleichzeitig auth.ts bearbeiten, ohne die Kopie des anderen anzufassen. Wenn sie fertig sind, prüfst und mergst du jeden Branch für sich.

so sieht es auf der Festplatte aus

Dieselbe Historie, getrennte Dateien. Wo die Ordner liegen, entscheidest du oder dein Tool.

my-project/                 ← your main checkout (main)
my-project/worktrees/
  ├─ add-auth/              ← worktree, branch add-auth
  └─ fix-nav/               ← worktree, branch fix-nav

Alle Worktrees teilen dieselbe Git-Historie, ein Commit in einem ist also auch von den anderen aus sichtbar. Nicht committete Änderungen bleiben in ihrem eigenen Ordner. Git selbst ist es egal, wo Worktrees liegen: neben dem Repo, in einem separaten Ordner oder darin, wie bei Pane.

so automatisiert Pane das

Pane erstellt, füllt und bereinigt für jedes Pane einen Worktree, sodass du die Befehle nie tippen musst.

Du musst keine Git-Befehle ausführen. Wenn du ein Pane erstellst, macht Pane Folgendes:

  1. Es nimmt einen Worktree, den es für dieses Projekt und diesen Branch vorbereitet hat, damit sich das Pane fast sofort öffnet, und gibt ihm einen neuen Branch.
  2. Es kopiert deine .env-Dateien, Agent-Einstellungen wie .claude und .codex sowie node_modules hinein, damit der Agent sofort loslegen kann. Die Liste kannst du in den Einstellungen ändern.
  3. Wenn du das Pane archivierst, prüft es auf nicht committete, nicht verfolgte oder nicht gepushte Arbeit und entfernt dann den Worktree. Ein archiviertes Pane kannst du später wiederherstellen.

Der manuelle Weg

Drei Befehle zum Erstellen und Starten, zwei zum Aufräumen.

Ohne Tool braucht dasselbe ein paar Git-Befehle:

echo "worktrees/" >> .git/info/exclude   # once: keep them out of git status
git worktree add worktrees/add-auth -b add-auth
cd worktrees/add-auth
claude                      # start your agent here

# once the branch is merged:
git worktree remove worktrees/add-auth
git branch -d add-auth

Denk daran, den Worktree zu entfernen und den Branch zu löschen, sobald er gemergt ist. Die meisten vergessen das, und deshalb automatisieren Tools es.

Quellen

Korrekturen
Wenn hier etwas falsch oder veraltet ist, sag uns Bescheid. Wir korrigieren es und aktualisieren das Datum oben. Issue auf GitHub öffnen
Quellen

häufig gestellte fragen

oder
Download*
Windows SmartScreen-WarnungBei direkten Downloads kann eine SmartScreen-Warnung erscheinen, solange Pane unsigniert ist. Pane ist vollständig Open Source. Du kannst den Code prüfen und die App selbst aus dem Quellcode bauen.1. Klicke auf Weitere Informationen2. Klicke auf Trotzdem ausführen3. Fahre mit der Installation fortDie PowerShell-Installation lädt das offizielle Release direkt herunter und umgeht die meisten Browser-Hürden.globale npm-Installation
Füge das in PowerShell ein.Linux

Von Parsa Khazaeepoul, Mitgründer von Pane. .