Entwickler koordiniert mehrere KI-Agenten, die parallel in verschiedenen Git Worktrees arbeiten

Entwicklung skalieren mit Git Worktrees und KI-Agenten

Sascha Kiefer

Als Softwarearchitekten und Entwickler bei vensas stehen wir häufig vor der Herausforderung, gleichzeitig an mehreren Features, Bugfixes oder Ideen zu arbeiten. Der klassische Ansatz mit git checkout bedeutet ständiges Wechseln zwischen Branches, Stashing von Änderungen oder "Work-in-Progress"-Commits - alles Zeitfresser, die den Flow unterbrechen.

In diesem Beitrag zeigen wir, wie Git Worktrees in Kombination mit KI-Coding-Agenten (wie GitHub Copilot, Claude Code oder Cursor) die Entwicklung auf ein völlig neues Level heben können.

Was sind Git Worktrees?

Git Worktrees ermöglichen es, mehrere Arbeitsverzeichnisse aus einem einzigen Repository zu erstellen, wobei jedes Verzeichnis auf einen anderen Branch ausgecheckt ist. Anders als bei git checkout besteht keine Beschränkung auf einen aktiven Branch pro Arbeitsverzeichnis - mehrere Features, Bugfixes oder Experimente können gleichzeitig bearbeitet werden, jedes isoliert in seinem eigenen Ordner, aber alle teilen sich dieselbe Repository-Historie und .git-Daten.

Vorteile auf einen Blick

  • Echter Parallelismus: Kein Context-Switching, Stashing oder versehentliches Überschreiben
  • Geringer Speicherbedarf: Alle Worktrees teilen sich dieselbe .git-Historie (im Gegensatz zu mehreren Klonen)
  • Nahtlose Git-Integration: Alle Branches und die Historie bleiben konsistent
  • Perfekt für Experimente: Verschiedene Ansätze parallel ausprobieren, ohne den Hauptbranch zu beeinflussen

Grundlegende Befehle

# Neuen Worktree erstellen
git worktree add ../feature-x-worktree feature-x

# Alle Worktrees auflisten
git worktree list

# Worktree entfernen
git worktree remove ../feature-x-worktree

# Bereinigen (entfernt Referenzen zu gelöschten Worktrees)
git worktree prune

KI-Agenten und parallele Workflows

Hier wird es richtig interessant: KI-Coding-Agenten wie GitHub Copilot, Claude Code, Cursor oder Aider können in separaten Worktrees parallel ausgeführt werden. Jeder Agent erhält seinen eigenen Branch und Ordner, sicher isoliert von den anderen.

Praktisches Szenario

Ein typisches Beispiel: Ein neues Feature soll implementiert werden, aber der beste Ansatz ist noch unklar:

1. Erstelle mehrere Worktrees:

git worktree add ../feature-auth-v1 -b feature-auth-v1
git worktree add ../feature-auth-v2 -b feature-auth-v2
git worktree add ../feature-auth-v3 -b feature-auth-v3

2. Öffne jedes Worktree in einem separaten VS Code Fenster

3. Weise jedem Fenster einen KI-Agenten zu:

  • Window 1: GitHub Copilot implementiert mit OAuth2
  • Window 2: Claude Code versucht einen JWT-Ansatz
  • Window 3: Cursor experimentiert mit Magic Links

4. Beobachten, vergleichen und auswählen:

  • Alle drei Agenten arbeiten parallel
  • Die Implementierungen können in Echtzeit verglichen werden
  • Die beste Lösung auswählen oder Aspekte aus mehreren Ansätzen kombinieren
  • Alle Branches zusammenführen oder die besten Commits cherry-picken

Branch-per-Agent Pattern

Ein bewährtes Muster für den Einsatz von KI-Agenten mit Worktrees:

main/
├── feature-x-agent1/    (GitHub Copilot)
├── feature-x-agent2/    (Claude Code)
└── feature-x-agent3/    (Cursor)

Jeder Agent erhält:

  • Seinen eigenen Worktree/Branch
  • Isolierte Arbeitsumgebung
  • Keine Konflikte mit anderen Agenten
  • Vollständige Git-Historie

Gleichzeitiges Testen mit verschiedenen Konfigurationen

Worktrees brillieren auch beim Testen:

# Worktree für Feature-Entwicklung
git worktree add ../feature-dev feature-branch

# Worktree für Tests mit Mock-Daten
git worktree add ../feature-test feature-branch

# Worktree für Integration-Tests
git worktree add ../feature-integration feature-branch

In jedem Worktree ist es möglich:

  • Verschiedene Umgebungsvariablen zu setzen
  • Unterschiedliche Testkonfigurationen zu verwenden
  • Mock vs. echte Services zu testen
  • Verschiedene Datenbank-Setups zu verwenden

Skalierung für Teams (real oder virtuell)

Worktrees sind nicht nur für Solo-Entwickler gedacht. Teams können sie nutzen:

  • Mehrere Entwickler: Jeder arbeitet in seinem eigenen Worktree
  • Code Reviews: Reviewer können PRs in separaten Worktrees checken, ohne ihre aktuelle Arbeit zu unterbrechen
  • Hotfixes: Schnell einen Hotfix in einem separaten Worktree erstellen, während die Feature-Entwicklung weiterläuft
  • Experimentieren: Neue Ansätze ausprobieren, ohne den Hauptbranch zu beeinflussen

Tooling und Automatisierung

Die Git Worktree Befehle können etwas umständlich sein. Hier sind einige Tools, die helfen:

Worktrunk CLI

Worktrunk ist eine CLI, die speziell für große KI-Agent-Workflows entwickelt wurde:

# Installation
cargo install worktrunk

# Worktree erstellen und wechseln
trunk new feature-x

# Zwischen Worktrees wechseln
trunk switch feature-x

# Aufräumen
trunk clean

Eigene Alias-Befehle

Füge diese zu deiner .gitconfig hinzu:

[alias]
    wt = worktree
    wta = worktree add
    wtl = worktree list
    wtr = worktree remove
    wtp = worktree prune

Best Practices

Dos

Verwende Worktrees für parallele Arbeiten: Features, Bugfixes, Experimente

Kombiniere mit KI-Agenten: Lass mehrere Ansätze parallel entwickeln

Nutze für Code Reviews: Schneller Kontext-Wechsel ohne Stashing

Automatisiere mit Scripts: Erstelle Wrapper-Scripts für häufige Workflows

Isoliere Testumgebungen: Verschiedene Configs in verschiedenen Worktrees

Don'ts

Verwende nicht denselben Branch in mehreren Worktrees (Git verhindert das)

Vergiss nicht aufzuräumen: Entferne nicht mehr benötigte Worktrees

Ignoriere nicht .env und Configs: Diese werden nicht automatisch synchronisiert

Übertreib es nicht: Zu viele Worktrees werden unübersichtlich

Praktisches Beispiel: Feature mit drei KI-Agenten entwickeln

Lass uns ein konkretes Beispiel zeigen:

# 1. Haupt-Repository vorbereiten
cd ~/projects/my-app
git checkout main
git pull

# 2. Drei Worktrees für drei Agenten erstellen
git worktree add ../my-app-copilot -b feature/user-auth-copilot
git worktree add ../my-app-claude -b feature/user-auth-claude
git worktree add ../my-app-cursor -b feature/user-auth-cursor

# 3. VS Code Fenster öffnen
code ../my-app-copilot
code ../my-app-claude
code ../my-app-cursor

# 4. In jedem Fenster den jeweiligen KI-Agenten aktivieren
# und mit der Implementierung beginnen

# 5. Nach der Entwicklung vergleichen
cd ~/projects/my-app
git diff feature/user-auth-copilot feature/user-auth-claude
git diff feature/user-auth-claude feature/user-auth-cursor

# 6. Besten Ansatz mergen oder Commits cherry-picken
git checkout main
git merge feature/user-auth-copilot  # oder den besten

# 7. Aufräumen
git worktree remove ../my-app-copilot
git worktree remove ../my-app-claude
git worktree remove ../my-app-cursor
git branch -d feature/user-auth-copilot feature/user-auth-claude feature/user-auth-cursor

Die Nicht-Determinismus von LLMs in einen Vorteil verwandeln

Ein interessanter Aspekt: KI-Agenten sind nicht-deterministisch - derselbe Prompt kann verschiedene Lösungen produzieren. Mit Worktrees wird das zu einem Vorteil:

  1. Erstelle N Worktrees für dasselbe Feature
  2. Lass N KI-Agenten parallel arbeiten
  3. Vergleiche alle Implementierungen
  4. Wähle die beste aus oder kombiniere die Stärken

Das ist wie ein Code Review mit mehreren Entwicklern, aber in einem Bruchteil der Zeit!

Performance und Speicher

Ein häufiges Missverständnis: "Mehrere Worktrees = mehrfacher Speicherverbrauch"

Falsch! Worktrees teilen sich die .git-Historie:

# Ein Klon
du -sh my-app/.git     # 150 MB

# Drei Worktrees
du -sh my-app/.git     # 150 MB (gleich!)
du -sh my-app-wt1      # 50 MB (nur Arbeitskopie)
du -sh my-app-wt2      # 50 MB (nur Arbeitskopie)
du -sh my-app-wt3      # 50 MB (nur Arbeitskopie)
# Gesamt: 300 MB

# Drei Klone würden 450 MB (3 × 150 MB) benötigen

Fazit

Git Worktrees sind ein Game Changer für moderne Entwicklung, besonders in Kombination mit KI-Coding-Agenten. Sie ermöglichen:

  • Echten Parallelismus ohne Overhead
  • Effiziente Nutzung von KI-Agenten für schnellere Entwicklung
  • Risikofreies Experimentieren mit verschiedenen Ansätzen
  • Verbesserte Produktivität durch weniger Context-Switching

Weiterführende Ressourcen

Unterstützung benötigt?

Ihr wollt Git Worktrees und KI-Agenten in eurem Entwicklungsteam einführen, aber seid unsicher, wie ihr die Workflows optimal gestalten sollt? Wir helfen euch gerne dabei! Meldet euch einfach über unsere Kontaktseite und wir schauen gemeinsam, wie wir euer Team fit für moderne Entwicklungspraktiken machen können.

Keinen Artikel mehr verpassen

Kein Spam. Nur relevante News über und von uns. Jederzeit abbestellbar.