Die Befehlsgruppe config liest und bearbeitet .codecharter/config.yml für Sie.
Jeder Schreibvorgang erhält Ihre Kommentare, die Schlüsselreihenfolge und die
Formatierung, prüft die Änderung vor dem Schreiben und hinterlässt die Datei nie
halb geschrieben.
codecharter config <unterbefehl> [argumente] [optionen]
Das Format der Konfigurationsdatei selbst (Profile, Parameter, Severities, Regel-Aktivierung und Pfad-Scopes) beschreibt Konfigurationsdatei. Diese Seite behandelt die Befehle, die sie verändern.
Konfiguration inspizieren
codecharter config explain <pfad>zeigt die effektive Konfiguration für eine Quelldatei, samt der Schicht, aus der jeder Wert stammt. Mit--jsongibt es maschinenlesbare Ausgabe.codecharter config validateprüft die Datei auf Strukturfehler, unbekannte Regeln, ungültige Parameterwerte und Einträge, die nie greifen.codecharter config schemagibt ein JSON-Schema für die Editor-Vervollständigung aus. Mit--out <datei>schreiben Sie es auf die Festplatte.codecharter config get <schlüssel>gibt den rohen Wert eines einzelnen Schlüssels aus.codecharter config list [abschnitt]gibt eine Übersicht aller Abschnitte aus oder die Einträge eines Abschnitts (profiles,params,overrides,ignore,include,exclude,scopes).
get erwartet einen punktierten Schlüssel: params.<regel>.<name>,
overrides.<regel>.severity oder profiles.<slug>. Mit --scope "<glob>"
lesen Sie aus dem Scope, dessen match diesem Glob entspricht, statt aus der
Basisschicht.
Werte bearbeiten: set und unset
codecharter config set <schlüssel> <wert> [--scope <glob>] [--local] [--dry-run] [--rules <dir>]
codecharter config unset <schlüssel> [--local] [--dry-run]
set schreibt einen Parameter, einen Severity-Override oder eine
Profil-Version:
codecharter config set params.cyclomatic-complexity.max 15
codecharter config set overrides.magic-number.severity warning
codecharter config set profiles.dotnet-base 1.4.2
Der Wert wird vor dem Schreiben geprüft: eine unbekannte Regel, ein Parameter,
den die Regel nicht anbietet, ein Wert außerhalb des erlaubten Bereichs oder
eine ungültige Severity werden abgelehnt, und die Datei bleibt unverändert
(Exit-Code 10). unset entfernt einen params- oder overrides-Eintrag
wieder.
Um Parameterwerte gegen Ihre Regeln zu prüfen, geben Sie mit --rules ein
Verzeichnis mit .cgr-Dateien an. Ohne diese Angabe werden ./rules und die
mitgelieferten Regeln versucht, dieselbe Erkennung wie bei
analyze.
Listen verwalten: add und remove
codecharter config add <abschnitt> [wert] [--in <ns>] [--match <glob>] [--path <datei>] [--scope <glob>] [--local] [--dry-run]
codecharter config remove <abschnitt> [wert] [--in <ns>] [--match <glob>] [--path <datei>] [--scope <glob>] [--local]
add und remove verwalten die listenwertigen Abschnitte:
codecharter config add exclude "**/Migrations/**"
codecharter config add profiles security@latest
codecharter config add ignore todo-comment --in Acme.Generated
codecharter config add include todo-comment --match "*Dto"
Bei ignore und include schränkt --in den Eintrag auf einen Namespace ein
und --match auf Entitäten, deren Name einem Glob entspricht. Bei profiles
verweisen Sie mit --path auf eine lokale Bundle-Datei statt auf einen Slug.
remove löscht den passenden Eintrag; ein mehrdeutiges Entfernen, das auf
mehrere Einträge passt, wird als Nutzungsfehler gemeldet, statt zu raten.
Scopes und das lokale Overlay ansteuern
Zwei Optionen bestimmen, wohin ein Schreibvorgang geht; sie gelten für set,
unset, add und remove:
--scope "<glob>"schreibt in den Scope, dessenmatchdiesem Glob entspricht, und legt den Scope am Ende der Datei an, falls er noch nicht existiert. Ohne diese Option gehen Schreibvorgänge in die Basisschicht.--localzielt auf.codecharter/config.local.yml(Ihr persönliches, lokales Overlay) statt auf die eingecheckteconfig.yml.
--dry-run gibt den Unified-Diff der geplanten Änderung aus und schreibt
nichts. Kombinieren Sie es mit jedem Schreibvorgang, um die Änderung vorab zu
sehen.
Gerüst und Aufräumen: init und tidy
codecharter config init [--at <dir>] [--profiles <csv>] [--local] [--force] [--dry-run]
codecharter config tidy [--local] [--dry-run]
init erstellt eine minimale .codecharter/config.yml (nur version: 1). Mit
--profiles "[email protected],security@latest" setzen Sie Startprofile, mit
--at wählen Sie das Verzeichnis, mit --local legen Sie stattdessen das lokale
Overlay an, und mit --force überschreiben Sie eine bestehende Datei.
tidy entfernt leere Abschnitte, die frühere Bearbeitungen hinterlassen haben,
und hält die Datei sauber.
Das lokale Overlay: config local
codecharter config local clone [--force] [--dry-run]
codecharter config local diff
codecharter config local clear [schlüssel...] [--dry-run]
.codecharter/config.local.yml überschreibt config.yml auf Ihrem Rechner und
wird nie eingecheckt (nehmen Sie es in .gitignore auf). Die Untergruppe
local verwaltet es:
clonekopiert die eingecheckte Konfiguration als Ausgangspunkt nachconfig.local.yml.--forceüberschreibt ein bestehendes Overlay.diffzeigt, was das Overlay aktuell überschreibt.clearentfernt bestimmte punktierte Schlüssel aus dem Overlay oder löscht die gesamte Overlay-Datei, wenn keine Schlüssel angegeben sind.
Einstellungen zwischen Schichten verschieben: promote und demote
codecharter config promote [schlüssel] [--all] [--keep] [--dry-run] [--rules <dir>]
codecharter config demote [schlüssel] [--all] [--dry-run] [--rules <dir>]
promoteverschiebt eine Einstellung aus Ihrem lokalen Overlay in die eingecheckteconfig.yml, wenn eine persönliche Anpassung zum Team-Standard werden soll.--keepkopiert statt zu verschieben (der Eintrag bleibt im Overlay), und--allbefördert das gesamte Overlay und leert es danach.demotekopiert eine eingecheckte Einstellung in Ihr lokales Overlay, sodass Sie sie anschließend lokal floaten lassen können, ohne die geteilte Datei zu ändern.--allkopiert die gesamte eingecheckte Konfiguration ins Overlay.
Ein häufiges Muster: demote profiles.dotnet-base, gefolgt von
set profiles.dotnet-base latest --local, pinnt das Team auf eine exakte Version,
während Sie auf Ihrem Rechner die neueste verfolgen.
Exit-Codes
Die lesenden Befehle get und list verwenden:
0: Erfolg.1: keine.codecharter/config.ymlgefunden.2: Nutzungsfehler (zum Beispiel ein nicht parsbarer Schlüssel).
Die bearbeitenden Befehle (set, unset, add, remove, init, tidy, die
Untergruppe local, promote, demote) verwenden:
0: Erfolg, einschließlich--dry-run-Vorschauen.2: Nutzungsfehler (falsche Argumente oder ein mehrdeutigesremove).10: Validierungsfehler — die Änderung wurde abgelehnt und die Datei blieb unverändert.