Les commandes Git intègrent quelques options pour obtenir des statistiques sur un dépôt, mais elles restent limitées et peu lisibles. gittop est un outil en ligne de commande qui propose une interface graphique dans le terminal, dans l'esprit de htop, pour visualiser l'activité d'un dépôt Git : contributeurs, fichiers les plus modifiés, historique des commits, branches, releases...

gittop est un outil open source écrit en Go, organisé en sept onglets qui couvrent différents aspects d'un dépôt Git.

Summary : vue synthétique avec des indicateurs clés : nombre total de commits, jours actifs, pic d'activité, durée de vie du projet, dernière release. Des graphiques viennent compléter le tableau avec possibilité de filtrer sur une période (3 mois, 6 mois, 1 an, ...)

Activity : heatmaps et commits par heure, jour de la semaine et mois pour visualiser les patterns d'activité du dépôt

Contributors : panneau affichant un classement des contributeurs avec, pour chacun, la cadence de contribution

Branches : tableau triable listant toutes les branches avec le dernier commit, l'auteur et les compteurs ahead/behind

Files : affichage des fichiers les plus volumineux, les plus fréquemment modifiés, ceux touchés par le plus grand nombre d'auteurs, les plus anciens, et une répartition par langage

Releases : liste des tags avec visualisation de la cadence des releases

Commits : journal de commits scrollable avec un visualiseur de diff intégré et une fonction de recherche

Installation

Plusieurs méthodes sont disponibles :

  • Arch Linux (AUR) : yay -S gittop
  • Homebrew : brew install hjr265/gittop/gittop
  • Go : go install github.com/hjr265/gittop@latest
  • Depuis les sources : cloner le dépôt puis go build -o gittop .

L'outil nécessite Go 1.26.2 ou supérieur.

Utilisation

gittop                  # Analyse le répertoire courant
gittop /chemin/du/repo  # Analyse un dépôt spécifique

Les variables d'environnement GIT_DIR et GIT_WORK_TREE sont également prises en compte.

Le code source est disponible sur GitHub.