Erste Analyse in 5 Minuten
Dieser Leitfaden geht davon aus dass du einen aktiven Account hast (siehe Registrierung und Trial) und die CLI lokal verfügbar ist (siehe Windows-Installer oder Standalone-CLI).
Wir laufen das ganze auf einer echten Solution durch, ohne erst eigene Regeln zu schreiben, die mitgelieferten Default-Pakete reichen für den ersten Lauf.
1. CLI testen
codeguard --version
Wenn das eine Versionsnummer ausgibt, ist die CLI verfügbar. Bekommst du "command not found", siehe Installation.
2. In dein Solution-Verzeichnis wechseln
cd ~/code/your-solution
ls *.sln
CodeGuard analysiert auf Solution-Ebene. Wenn keine .sln-Datei
vorhanden ist, kannst du auf ein einzelnes Projekt zeigen, aber
Solution ist der Default-Fall.
3. Default-Regelpaket aktivieren
Ohne .codeguard-Verzeichnis im Repo lädt die CLI eine Default-Konfiguration
mit den eingebauten Regelpaketen. Wenn ihr eure eigene Konfiguration habt,
landet sie typisch unter .codeguard/ im Repo-Root.
Für den ersten Lauf brauchst du nichts vorbereiten, die Default-Pakete sind eingebaut.
4. Analyse starten
codeguard analyze . --output console
Das scannt deine Solution gegen die eingebauten Regeln. Auf einer mittelgrossen Codebasis dauert das beim ersten Mal 20-60 Sekunden, danach mit Cache wenige Sekunden.
Du siehst etwas wie:
CodeGuard 1.4.0
Analyzing src/Acme.Web/Acme.Web.sln (124 projects)
Acme.Web/Controllers/ProductsController.cs:42
[warn] Async-Method-Without-CancellationToken
Add 'CancellationToken cancellationToken = default' as the last parameter
Acme.Web/Services/PriceCalculator.cs:18
[warn] DateTime-Direct-Usage
Inject TimeProvider via constructor and call GetUtcNow()
...
Done in 28.4s. 17 findings (3 errors, 14 warnings)
Wenn das Exit-Code 0 ist (nur Warnungen, keine Errors), bist du erfolgreich durchgekommen.
5. JSON-Output für weitere Verarbeitung
codeguard analyze . --output json --output-file findings.json
Das schreibt eine maschinenlesbare Datei. Format-Details unter Output-Formate.
Was als nächstes
- Erste eigene Regel schreiben: siehe Erste eigene Regel
- Ein Finding fixen: siehe Erstes Finding fixen
- In die CI einbauen: siehe GitHub Actions