Multipliez votre vitesse de développement avec l’IA grâce aux Git Worktrees
Fini le jonglage fastidieux entre git stash et les réinstallations de dépendances. Découvrez comment les Git Worktrees révolutionnent votre expérience développeur en permettant à vos agents IA de travailler sur une branche isolée pendant que vous restez concentré sur votre code. Une méthode indispensable pour mener vos tâches en parallèle et multiplier votre vitesse d'exécution sans friction.
Chez SensioLabs, le créateur de Symfony, nous savons que l'expérience développeur (DX) compte plus que jamais pour transformer la façon dont les équipes construisent leurs logiciels. Chaque développeur connaît la douleur du changement de contexte. En général, cela implique d'utiliser git stash pour sauvegarder son travail, de basculer sur une nouvelle branche, et souvent de subir une réinstallation des dépendances et une réinitialisation des fixtures avant même de pouvoir commencer à examiner un problème urgent.
Et si vous n'aviez plus jamais à mettre votre travail de côté ni à attendre la réinstallation des dépendances ? C'est là qu'interviennent les Git Worktrees. Et lorsque vous combinez cette fonctionnalité native de Git avec des agents de code IA modernes comme Claude Code, vous débloquez un workflow totalement révolutionné !
Que sont les Git Worktrees ?
Les Git worktrees sont une fonctionnalité intégrée qui permet de récupérer simultanément plusieurs branches d'un même dépôt, chacune dans son propre répertoire de travail distinct. Au lieu de jongler avec un seul espace de travail en changeant constamment d'état, vous pouvez disposer d'un espace dédié pour chaque branche sur laquelle vous travaillez activement.
Les principaux cas d'usage des Git worktrees incluent :
Préserver un staging complexe : si vous avez déjà bien avancé dans la préparation de votre travail, les worktrees vous permettent de travailler sur une autre branche sans risquer qu'un
stash popéchoue plus tard à cause de fichiers modifiés.Éviter la perturbation de l'environnement : basculer entre des branches ayant des dépendances très différentes fait perdre un temps considérable. Les worktrees permettent à ces différents environnements de coexister sur votre disque.
Comparaisons côte à côte : vous pouvez facilement exécuter plusieurs branches localement en même temps pour comparer leur comportement ou relire des pull requests sans perdre le fil.
Le niveau supérieur : des sessions IA en parallèle
En utilisant les worktrees, vous pouvez lancer des sessions IA parallèles en totale isolation. Cela signifie que vous pouvez avoir Claude Code en train de développer activement une fonctionnalité dans un worktree, pendant que vous corrigez manuellement un bug dans un autre, sans qu'aucune des deux sessions n'interfère avec l'autre.
Comment ça fonctionne avec Claude Code
Lancer une session IA isolée est incroyablement simple. Il suffit d'utiliser le flag --worktree (ou -w) au démarrage de l'agent :
```bash
claude --worktree my-new-feature
```
Si vous omettez le nom, Claude en générera un aléatoirement. Vous pouvez également demander à des sous-agents spécialisés d'utiliser des worktrees, garantissant ainsi que les tâches en arrière-plan sont traitées en parallèle en toute sécurité.
Une fois la session IA terminée, le nettoyage est géré pour vous. Si l'agent n'a effectué aucune modification, le worktree et sa branche sont automatiquement supprimés. Si des modifications ou des commits ont été réalisés, vous serez invité soit à conserver le worktree pour le relire plus tard, soit à le supprimer entièrement.
Il convient de noter que cette fonctionnalité de “worktree” est également disponible sur Claude Desktop (dans l'onglet “Code”) et dans de nombreux autres agents (Codex, Antigravity, Gemini CLI (en phase expérimentale), etc.).
Résoudre le dilemme du .env
Un obstacle fréquent pour les développeurs PHP et Symfony utilisant les worktrees est que les checkouts frais n'incluent pas les fichiers non suivis, comme vos fichiers de configuration locaux .env ou .env.local.
Pour rendre cela transparent, Claude Code prend en charge un fichier .worktreeinclude à la racine de votre projet. En utilisant la syntaxe standard de .gitignore, vous pouvez indiquer à l'agent de copier automatiquement vos fichiers d'environnement locaux dans chaque nouveau worktree qu'il crée. Ainsi, l'environnement isolé de l'agent IA est immédiatement prêt à exécuter et tester votre application.
Conclusion
Améliorer l'expérience développeur est une priorité chez SensioLabs. En abandonnant git stash au profit des Git worktrees, vous supprimez les frictions de vos tâches quotidiennes. Coupler cette architecture avec des agents de code IA vous permet de paralléliser votre production et de traiter simultanément des bugs complexes et de nouvelles fonctionnalités.