GitInsight est un outil CLI open source développé en Go qui analyse un dépôt Git local et génère des statistiques complètes sur l'activité du projet.
Il permet d'obtenir une vue d'ensemble instantanée : nombre total de commits, contributeurs les plus actifs, fichiers les plus modifiés, période d'activité et graphique ASCII des commits par semaine.
- 📊 Statistiques générales (commits, contributeurs, fichiers)
- 👥 Classement des contributeurs les plus actifs
- 📁 Fichiers les plus modifiés
- 📈 Graphique d'activité hebdomadaire (ASCII)
- 🕒 Historique des commits récents
- 🎨 Interface colorée et élégante
# Cloner et compiler
git clone https://github.com/tresor228/gitinsight.git
cd gitinsight
go build -o gitinsight ./cmd/gitinsight
# Installation globale (optionnel)
sudo cp gitinsight /usr/local/bin/# Analyser le dépôt courant
gitinsight
# Analyser un dépôt spécifique
gitinsight /path/to/your/repo
# Désactiver les couleurs
gitinsight --no-colors╔══════════════════════════════════════════════════════════════╗
║ GitInsight ║
║ Analyse complète de votre dépôt Git ║
╚══════════════════════════════════════════════════════════════╝
STATISTIQUES GÉNÉRALES
──────────────────────────────────────────────────
Total des commits : 1
Nombre de contributeurs: 1
Fichiers modifiés : 0
Période d'activité : 05/10/2025 - 05/10/2025
CONTRIBUTEURS LES PLUS ACTIFS
──────────────────────────────────────────────────
#1 tresor228 1 commits (100.0%)
[email protected]
FICHIERS LES PLUS MODIFIÉS
──────────────────────────────────────────────────
ACTIVITÉ HEBDOMADAIRE
──────────────────────────────────────────────────
Légende: = (1-25%) == (26-50%) === (51-75%) ==== (76-100%)
29/09/2025 =============================================== 1 commits
COMMITS RÉCENTS
──────────────────────────────────────────────────
0557e976 Initial commit: GitInsight CLI tool tresor228 (05/10/2025 10:12)
Analyse terminée avec succès!
gitinsight/
├── cmd/
│ └── gitinsight/ # Point d'entrée de l'application
│ └── main.go
├── internal/
│ ├── git/ # Analyse des dépôts Git
│ │ └── analyzer.go
│ └── output/ # Formatage et affichage
│ └── formatter.go
├── build/ # Binaires compilés
├── Makefile # Scripts de build
├── go.mod # Dépendances Go
└── README.md
```bash
# Compiler
go build -o gitinsight ./cmd/gitinsight
# Tests
go test ./...
# Formatage
go fmt ./...
- Fork le projet
- Créer une branche (
git checkout -b feature/AmazingFeature) - Commit (
git commit -m 'Add AmazingFeature') - Push (
git push origin feature/AmazingFeature) - Ouvrir une Pull Request
MIT License - Voir LICENSE
Fait avec ❤️ en Go