Wie Ihre Repositorys geführt werden, an einem Ort bewertet.
Git Health prüft, wie jedes Repository geführt wird, nicht was darin steht: Ist der Standard-Branch geschützt, werden Merge Requests genehmigt, tragen Commits einen Issue-Key, laufen Sicherheitstools in der Pipeline, sind die nötigen Dateien da? 29 Regeln und ein gewichteter Score auf GitHub, GitLab, Bitbucket und Azure DevOps.
Bildschirme aus einer laufenden Installation
Sechs Gruppen, 29 Regeln
Jede Regel beantwortet eine Ja-Nein-Frage zur Führung des Repositorys und trägt einen Schweregrad und ein Gewicht.
Branch-Schutz
Standard-Branch geschützt, keine direkten Pushes, keine Force-Pushes, Release-Branches und Tags geschützt.
Merge-Request-Regeln
Genehmigung nötig, Mindestzahl an Genehmigungen, keine Selbstgenehmigung, Diskussionen gelöst und grüne Pipeline vor dem Merge, Quell-Branch danach gelöscht.
Nachvollziehbarkeit
Commits und Merge-Request-Titel tragen einen Issue-Key, Branch-Namen folgen einem Muster, ein Issue-Tracker ist verbunden.
Sicherheit in der CI
SAST, Secret-Erkennung, Abhängigkeits- und Container-Scans, eine SBOM und SonarQube mit MR-Berichten - in der Pipeline gefunden, eingebundene Vorlagen inklusive.
Repository-Hygiene
CODEOWNERS, eine eingecheckte Lockfile, Merge-Request- und Issue-Vorlagen und keine eingecheckten Geheimnisdateien (Abgleich per Name; Inhalte werden nie gelesen). README, .gitignore und SECURITY.md prüft das Compliance-Modul.
AppArch selbst
Ein Collector hat in den letzten 30 Tagen berichtet, die Scores überall sonst sind also aktuell.
Unbekannt ist nicht null
Eine Regel, die Plattform oder Token nicht beantworten können, gilt als übersprungen und zählt nicht zum Score. Eine Verbindung mit abgelaufenem Token zeigt „0 von 2 bewertbar“, nie „29 Fehler“. Ebenso bei einer Pipeline, die nicht ganz lesbar ist: Ein unlesbares Include heißt übersprungen, nicht fehlgeschlagen.
Keine Anmeldung, nichts von Hand zu starten
Jedes Projekt mit Git-Verbindung ist ab dem Moment dabei, in dem es angelegt wird.
- 01
Projekt anlegen
Der erste Scan wird eingeplant, sobald das Projekt angelegt ist.
- 02
Scans halten sich aktuell
Geplante Scans prüfen jedes Repository erneut; eine letzte Woche geänderte Einstellung taucht auf, ohne dass jemand fragt.
- 03
Beheben und Score beobachten
Jede verletzte Regel sagt, was sie gefunden hat; der Projekt-Score steht auf der Health-Karte neben den anderen Modul-Scores.
Was auf welcher Plattform geprüft werden kann
Nicht jede Plattform legt jede Einstellung über ihre API offen. Wo eine nicht antworten kann, wird die Regel übersprungen und zählt nicht zum Score; nie als Fehlschlag.
| GitLab | GitHub | Bitbucket | Azure DevOps | |
|---|---|---|---|---|
| Standard- und Release-Branches geschützt | ||||
| Merge-Regeln: Freigaben, keine Selbstfreigabe, grüne Pipeline, gelöste Threads | übersprungen | übersprungen | ||
| Kein Force-Push, kein direkter Push auf den Standardbranch | übersprungen | übersprungen | ||
| Quellbranch nach dem Merge gelöscht | übersprungen | übersprungen | ||
| Geschützte Tags, Issue-Schlüssel in Branch-Regeln | übersprungen | übersprungen | übersprungen | |
| Issue-Schlüssel in Commits und MR-Titeln, Branch-Benennung | ||||
| CODEOWNERS, Lockfile, Vorlagen, keine eingecheckten Geheimnisse | teilweise | teilweise | ||
| Sicherheitstools in CI: SAST, Secrets, Abhängigkeiten, Container, SBOM, SonarQube | ||||
| Collector aktiv, Issue-Tracker verbunden |
Regeln, die viele Elemente prüfen, geben Teilpunkte: Ein ungeschützter Branch von sieben kostet nicht so viel wie sieben.
Alle Merge Requests aller Anbieter in einer Liste
Git Health hält außerdem die Merge Requests des Workspaces an einem Ort, egal auf welcher Plattform sie liegen.
- Nach Status, Projekt, Autor und Ziel-Branch filtern oder suchen
- Ein Abzeichen verlinkt jeden geprüften MR mit seinem ArchPilot-Bericht
- Architos Filter „länger als üblich“ zeigt, was hängt
Fragen zu Git Health
Welche Plattformen werden abgedeckt?
Liest es unseren Code?
Welche Rechte braucht das Token?
Verändert Git Health unsere anderen Scores?
So sieht es im Produkt aus
Alle Screenshots
Sehen Sie, wie Ihre Repositorys wirklich geführt werden
Verbinden Sie im PoC einen Git-Anbieter; die ersten Scores kommen, sobald die Projekte angelegt sind.