FluxGit affiche les sous-modules, les worktrees et le contexte entre dépôts parents et enfants pour que les espaces de travail composés de plusieurs parties cessent de masquer les modifications non commitées et les commits incohérents du parent.
Git worktree ou sous-module : lequel vous faut-il ?
Worktree : un autre checkout du même dépôt
Un worktree lié permet de travailler sur une autre branche dans un autre dossier sans modifier le checkout déjà ouvert. Utilisez-le pour des tâches parallèles ou des tentatives d’agents au sein d’un même dépôt.
Sous-module : un dépôt distinct à l’intérieur d’un parent
Un sous-module possède son propre historique. Le dépôt parent enregistre le commit précis du sous-module qu’il attend : vous pouvez ainsi inclure un autre projet et choisir quand mettre à jour cette référence.
Ils répondent à des besoins différents : un worktree donne à un dépôt plusieurs dossiers de travail ; un sous-module relie deux dépôts. FluxGit affiche les worktrees liés et l’état parent-enfant des sous-modules dans la même vue de l’espace de travail. Consultez le parcours sûr avec des worktrees pour des agents de programmation en parallèle, ainsi que la documentation de Git worktree et des sous-modules Git pour comprendre le fonctionnement sous-jacent de Git.
Utiliser Git worktree avec des sous-modules
Les worktrees et les sous-modules peuvent coexister, mais inspectez chaque checkout séparément. Git documente une prise en charge incomplète des sous-modules entre plusieurs worktrees et déconseille plusieurs checkouts d’un superprojet. Vérifiez cette limite avant d’adopter cette structure.
le commit du sous-module enregistré dans le HEAD du worktree parent
le commit du sous-module préparé dans l’index du parent
le HEAD du checkout du sous-module initialisé
Comparez ces trois commits avant de modifier une référence ; leur égalité ne prouve pas que le dossier de travail enfant est propre. FluxGit affiche l’état parent-enfant et les références divergentes ; Agent Lanes compare les tentatives parallèles sans appliquer leurs modifications.
Deux worktrees d’agents s’affrontent sur la même tâche · comparez les tentatives, puis fusionnez la gagnante via le parcours protégé · interface réelle, données de démonstration synthétiques
Le problème : les dépôts composés de plusieurs parties masquent les états incohérents.
Les sous-modules peuvent s’éloigner du commit enregistré par leur parent, et les worktrees multiplient les branches entre dossiers. Lorsque cet état est invisible, vous pouvez créer un commit du parent qui pointe vers le mauvais sous-module.
Périmètre actuel
Les parcours de sous-modules et de worktrees sont en bêta. L’état en attente est affiché pour chaque espace de travail, et les opérations destructrices sur les sous-modules et les worktrees passent par le même parcours de confirmation protégé que les autres opérations.
Comment FluxGit vous aide.
sous-modules
Contexte parent-enfant
Le clonage initialise les sous-modules par défaut, et vous pouvez ouvrir l’enfant ou le parent depuis leur contexte. Depuis Fleet Radar, enregistrez dans le parent un pointeur de sous-module qui s’est écarté du commit enregistré, ou ramenez le sous-module à ce commit, quelle que soit la profondeur.
worktrees
Créer / ouvrir / supprimer
Les actions sur les worktrees sont soumises à des contrôles avec de l’aide lorsqu’un backend de bureau est requis. Lorsque des tentatives parallèles sur la même tâche se trouvent dans des worktrees liés, vous pouvez les comparer côte à côte et fusionner la gagnante via le parcours protégé.
tentatives
Tentatives côte à côte
Comparez les tentatives parallèles d’agents côte à côte, fichier par fichier. Les fichiers modifiés par plusieurs tentatives apparaissent en premier, et chaque cellule ouvre le diff de la tentative correspondante. La comparaison n’applique aucune modification.
sécurité
Aucune destruction silencieuse
Les actions destructrices sur les sous-modules et les worktrees demandent confirmation avant d’agir.
Comparez les tentatives parallèles côte à côte.
Agent Lanes place chaque tentative parallèle dans une colonne et chaque fichier dans une ligne, en les comparant à votre checkout. Lisez le diff de chaque tentative depuis sa cellule, puis fusionnez la gagnante via le parcours protégé.
Trois tentatives parallèles côte à côte · les fichiers modifiés par plusieurs tentatives apparaissent en premier · interface réelle de FluxGit, données de démonstration synthétiques
Enregistrez un pointeur de sous-module décalé ou revenez au commit enregistré.
Lorsque le checkout d’un sous-module s’est éloigné du commit enregistré par son parent, Fleet Radar propose deux actions. L’une enregistre le nouveau pointeur dans le parent avec un commit qui ne contient que ce pointeur. L’autre ramène le sous-module au commit enregistré et conserve un point de restauration ; elle refuse l’opération si ce checkout abandonnerait un commit qui n’est contenu dans aucune branche, aucun tag ni aucun dépôt distant. Les deux fonctionnent sur les sous-modules imbriqués.
Confidentialité et sécurité.
L’inspection de l’espace de travail privilégie le traitement local. FluxGit lit votre structure locale sans l’envoyer où que ce soit.