Grovr – Eine Desktop-Anwendung zur einfachen Verwaltung von Git Worktrees
(github.com/j1king)Wer mit AI mehrere Aufgaben parallel bearbeitet, nutzt wahrscheinlich häufig Git Worktree.
Wenn es jedoch viele Worktrees werden, wird die Verwaltung schwierig. Es ist schwer, auf einen Blick zu erkennen, welche Aufgabe wo liegt, welches Ticket dazugehörte oder ob bereits ein PR erstellt wurde. Auch das Erstellen von Branches oder das Wechseln zwischen Worktrees wird jedes Mal umständlich.
Deshalb habe ich Grovr entwickelt, eine Desktop-Anwendung, mit der sich Worktrees intelligenter verwalten lassen. (Derzeit nur für macOS)
Hauptfunktionen:
- Worktree-Liste auf einen Blick
- IDE-Start mit einem Klick (VS Code, Cursor, JetBrains IDE usw.)
- Jira- und GitHub-Integration zur Prüfung von Ticket-/PR-Status
- Automatisches Extrahieren des Branchnamens aus der Zwischenablage und Erstellen eines Worktrees
Wenn ihr viel mit Worktrees arbeitet, probiert es gern aus und gebt Feedback!
Für alle, die Worktree noch nicht kennen, hier eine kurze Erklärung.
Was ist Git Worktree?
Dabei handelt es sich um eine Funktion, mit der in einem einzigen Git-Repository mehrere Branches gleichzeitig in unterschiedlichen Verzeichnissen ausgecheckt werden können.
Eigenschaften (im Vergleich zu Branches):
- Gewöhnlicher Branch: Wechsel in einem einzigen Verzeichnis per
git checkout, für Dateien in Bearbeitung ist ein Stash nötig - Worktree: Für jeden Branch wird ein separates Verzeichnis erstellt, sodass an mehreren Branches gleichzeitig gearbeitet werden kann
- Der Ordner
.gitwird mit dem Haupt-Repository geteilt (verlinkt statt dupliziert)
Beispiel für die Verzeichnisstruktur:
(Nur ein Beispiel, die Struktur kann auch anders aussehen)
~/projects/
├── my-repo/
│ ├── .git/
│ └── ...
└── my-repo.worktrees/
├── feature/add-oauth-login/
└── hotfix/fix-payment-error/
Vorteile:
- Mehrere Aufgaben parallel bearbeiten, ohne zwischen Branches zu wechseln
- Sofortiger Kontextwechsel ohne Stash
- Änderungen in einem Worktree wirken sich nicht auf andere Worktrees aus.
- Spart Festplattenspeicher im Vergleich zu mehrfachen Klonen
Verwendung:
- Neuen Worktree erstellen:
git worktree add <Pfad> <Branch> - Worktree-Liste anzeigen:
git worktree list - Worktree löschen:
git worktree remove <Pfad>
Noch keine Kommentare.