GitComet : interface Git en Rust pour grands dépôts, difftool et mergetool intégrés
Ce projet transforme « GitComet is fastest open source user interface for GIT workflows. GitComet User Survey We re running this short survey to better understand how people use our Git GUI client in their daily work. » en une solution open source exploitable, avec une chaîne d’outils réutilisable et des moyens d’intégration pour des cas d’usage concrets.
En bref
- De quoi s’agit-il ?
- Le client Git graphique Auto-Explore/GitComet vise la réactivité sur les dépôts énormes, s'installe partout de Homebrew à AUR, et se branche sur git difftool et git mergetool avec compatibilité KDiff3 et Meld.
- À qui s’adresse-t-il ?
- GitComet visera les développeurs qui naviguent dans des dépôts volumineux et veulent un client graphique local-first doublé d'un difftool en ligne de commande ; il intéressera moins ceux qui cherchent une plateforme collaborative type forge. Avant d'adopter, vérifiez votre version locale de Git, 2.50 minimum, lancez gitcomet setup avec --dry-run pour voir les entrées de config écrites, et notez que la licence AGPL-3.0 contraint quiconque modifie et redistribue l'outil.
- Puis-je l’utiliser commercialement ?
- Oui, sous conditions strictes. AGPL-3.0 est une licence à copyleft réseau : si des personnes utilisent une version modifiée via un réseau, par exemple comme service hébergé, vous devez leur proposer son code source sous la même licence.
- Est-il encore maintenu ?
- Oui. Les derniers commits datent d’il y a 2 jours.
- En quel langage est-il écrit ?
- Principalement Rust, d’après les statistiques de langage de GitHub.
Ces réponses reposent sur les données GitHub du projet (dernière synchronisation le 14 septembre 2026) et sur notre analyse. Elles ne constituent pas un avis juridique.
ANALYSE OPEN SOURCE APPROFONDIE
Né de la frustration sur Chromium : un client Rust pour les dépôts énormes
GitComet raconte son origine sans détour : l'équipe n'a pas trouvé d'outil qui reste réactif en naviguant dans les grands dépôts et les diffs de fichiers volumineux, en citant Chromium comme exemple de codebase problématique. Le projet se revendique « fastest open source Git GUI », une formule promotionnelle à lire comme une intention, aucun benchmark public ne l'étaye dans le README. Les faits vérifiables : un client écrit en Rust, 780 étoiles, 40 forks, 49 tickets ouverts, une branche par défaut dev poussée le 19 août 2026, et des binaires pour Linux, Windows et macOS. Le positionnement tient en trois piliers : opérations Git rapides, confidentialité local-first, et workflows familiers. L'interface repose sur GPUI, la boîte à outils de Zed, et le backend Git passe par gix, la réimplémentation Rust, d'après les features demandées à la compilation.
Homebrew, Microsoft Store, AUR, GURU et dépôt apt signé : cinq chemins d'installation
La couverture d'installation est large. Sur macOS et Linux, le cask Homebrew `brew install --cask gitcomet` installe l'application et la commande gitcomet, la variante Linux passant par une AppImage, avec repli possible sur le dépôt APT, le paquet AUR, un tarball ou un .deb. Sur Arch, le README documente le clone du dépôt AUR puis makepkg -si ; sur Gentoo, emerge --ask dev-vcs/gitcomet depuis l'overlay GURU. Windows dispose d'un installateur et d'un binaire portable sur GitHub Releases, plus une fiche Microsoft Store. Le dépôt apt demande d'abord la clé via apt.gitcomet.dev, avec le trousseau posé dans /usr/share/keyrings/gitcomet-archive-keyring.gpg. Détail utile pour Debian, Ubuntu et WSLg : si vous installez le tarball ou le binaire Homebrew au lieu du paquet apt officiel, les bibliothèques graphiques libxcb1, libxkbcommon0 et libxkbcommon-x11-0 doivent être installées à part. Le prérequis transversal reste une installation Git locale en 2.50 ou plus récent.
gitcomet setup : une inscription difftool et mergetool idempotente avec guiDefault=auto
Au-delà du client graphique, GitComet se comporte comme un outil de diff et de fusion appelé par git difftool et git mergetool, en mode headless sans affichage ou en mode fenêtre GPUI interactive. La commande gitcomet setup écrit la configuration Git globale, merge.tool, diff.tool, les lignes cmd correspondantes et trustExitCode, en pointant vers le chemin absolu du binaire ; gitcomet uninstall retire proprement l'intégration. Les deux commandes sont conçues pour être idempotentes, et les options --local pour cibler le seul dépôt courant et --dry-run pour imprimer les commandes avant application permettent de contrôler l'effet. L'inscription pose guiDefault=auto : Git choisit la variante graphique quand un affichage est disponible et retombe sur le mode headless sinon, ce qui rend le même réglage utilisable en CI et sur un poste. Les valeurs précédentes de l'utilisateur sont sauvegardées sous gitcomet.backup.* et ne sont restaurées par uninstall que si la clé n'a pas été modifiée depuis.
Formes d'invocation KDiff3 et Meld pour un remplacement direct dans les scripts
Le mode en ligne de commande expose deux sous-commandes. gitcomet difftool prend --local, --remote, et des étiquettes d'affichage optionnelles --path, --label-left et --label-right, avec lecture de secours des variables d'environnement LOCAL et REMOTE quand Git l'invoque. gitcomet mergetool ajoute --merged et --base, ce dernier étant optionnel pour les conflits add/add, et lit LOCAL, REMOTE, MERGED et BASE depuis l'environnement. La compatibilité la plus intéressante est documentée noir sur blanc : les formes d'invocation de KDiff3 et Meld sont acceptées, --L1, --L2, --L3, -o, --output, --out, --base et les arguments positionnels, ce qui permet de remplacer ces outils dans une configuration Git existante sans réécrire les lignes cmd. Pour un administrateur de parc, cela veut dire qu'un passage de Meld à GitComet se résume souvent à changer le chemin du binaire dans git config, le reste de la configuration restant identique.
Éditions annoncées : open source à 0 euro et Professional à 20 euros à vie
Le README décrit une structure en éditions, avec la mention « planned » qui invite à la prudence. L'édition Open Source est annoncée à 0 euro pour usage personnel et commercial, avec le workflow bureau local-first complet : remotes, pull/push, staging, commits, worktrees, branches, historique complet, navigation multi-dépôts, diffs côte à côte ou en ligne, et outils de fusion à deux et trois voies. L'édition Professional est affichée à 20 euros en accès à vie, offre limitée aux premiers adoptants, et ajouterait les intégrations Claude Code, Codex et GitHub CLI, des workflows de couverture de tests, et des intégrations GitHub et Azure DevOps, avec améliorations prioritaires pendant l'accès anticipé ; les intéressés passent par une liste d'attente sur gitcomet.dev/#editions. La licence du dépôt est AGPL-3.0 : sans effet pour un usage en outil de bureau, elle oblige en revanche à partager les sources modifiées si vous distribuez une version altérée ou en offrez l'accès en réseau.
Compiler avec ui-gpui et gix, thèmes JSON par utilisateur et logs de crash localisés
La construction depuis les sources tient en deux commandes documentées : cargo build -p gitcomet --features ui-gpui,gix, puis cargo run -p gitcomet --features ui-gpui,gix -- /path/to/repo pour ouvrir un dépôt précis. Les thèmes intégrés sont embarqués dans le binaire, tandis que les thèmes personnalisés se chargent depuis des fichiers JSON dans le répertoire de thèmes par utilisateur, créé au démarrage ; le guide complet, emplacements, schéma, exemples et règles de surcharge, vit dans docs/themes.md. En cas d'incident, les logs de panic et l'état de récupération sortent dans $XDG_STATE_HOME/gitcomet/crashes/ sous Linux, avec repli ~/.local/state/gitcomet/crashes/, et ~/Library/Logs/gitcomet/crashes/ sous macOS. Le rythme de releases s'accélère : v0.1.16 fin juin, puis v0.2.0 le 16 août et v0.2.1 le 19 août 2026. Un sondage utilisateurs via Google Forms complète le tableau d'un projet jeune qui cherche encore son public.
Conclusion éditoriale
GitComet visera les développeurs qui naviguent dans des dépôts volumineux et veulent un client graphique local-first doublé d'un difftool en ligne de commande ; il intéressera moins ceux qui cherchent une plateforme collaborative type forge. Avant d'adopter, vérifiez votre version locale de Git, 2.50 minimum, lancez gitcomet setup avec --dry-run pour voir les entrées de config écrites, et notez que la licence AGPL-3.0 contraint quiconque modifie et redistribue l'outil. Dernière release en date : v0.2.1, publiée le 19 août 2026.
Notes de la communauté