La plupart des problèmes de développement d’IA parallèle proviennent d’une seule erreur architecturale : plusieurs agents partageant le même répertoire de travail. Les équipes lancent trois instances Claude Code, les pointent vers le même dossier de projet et observent les écritures de fichiers se heurter, les extractions de branches s'interrompent et verrouillent les fichiers corrompus. Le symptôme ressemble à une condition de concurrence critique. La cause première est la conception du système de fichiers.
Les arbres de travail Git résolvent ce problème en donnant à chaque agent son propre répertoire de travail isolé tout en partageant un seul..gitdépôt. Cette distinction est cruciale. Les développeurs bénéficient d'une exécution parallèle sans la surcharge de stockage des clones complets, et les agents opèrent sur des branches distinctes sans se marcher sur les descripteurs de fichiers des autres. Le modèle existe depuis Git 2.5, mais les workflows de codage de l'IA en font finalement une infrastructure essentielle.
Quand tu coursfonctionnalité de paiement git-Adans un répertoire où un autre processus lit des fichiers, l'état du système de fichiers change sous ce lecteur. L'autre processus ne voit pas les transitions atomiques : il voit les écritures partielles, les fichiers manquants et les graphiques de dépendances incohérents. Les compilateurs TypeScript échouent avec les erreurs « Impossible de trouver le module ». Les serveurs de développement plantent car les fichiers surveillés ont disparu en cours de lecture. Les fichiers de verrouillage des gestionnaires de packages sont corrompus lorsque deux agents s'exécutentinstallation npmsimultanément sur différentes branches avec différents arbres de dépendances.
La solution évidente – échelonner l’exécution des agents afin qu’un seul s’exécute à la fois – va à l’encontre de l’objectif du développement parallèle. Les équipes qui tentent ce modèle se retrouvent avec des agents IA en file d'attente, chacun bloquant le suivant jusqu'à ce qu'il se termine. Le goulot d’étranglement passe de la vitesse de frappe humaine à l’exécution en série, et les gains de productivité s’évaporent.
Les clones complets du référentiel fonctionnent mais gaspillent de l'espace disque. Un monorepo de 2 Go cloné cinq fois pour cinq agents consomme 10 Go d'objets Git redondants. Les extractions éparses réduisent la taille du répertoire de travail mais n'éliminent pas la duplication. Le mode de défaillance ici est subtil mais coûteux : les équipes atteignent les limites de stockage sur les exécuteurs CI, les disques SSD locaux se remplissent et les temps de clonage dominent la latence de démarrage des agents.
Un worktree est un répertoire de travail lié à un.gitdossier. Courirgit worktree add ../feature-A feature-Aet Git crée un nouveau répertoire à../fonctionnalité-Avérifié aufonctionnalité-Abifurquer. Le répertoire de travail d'origine et le nouvel arbre de travail partagent la même base de données d'objets, les ...
[Courte citation de 8% de l'article original]