Diese Woche hatte ich die Gelegenheit, an TOML-Konfigurationsdateien zu arbeiten und eine an meinem Repository vorgenommene Änderung zu überprüfen, indem ich die Änderungen lokal aus einem Zweig meines Projekts zog
TOML (Tom's Obvious Minimal Language) ist ein Konfigurationsdateiformat, das ein einfaches Schlüssel-Wert-Paar verwendet, um die Konfigurationsvariablen zu definieren, die in einem Programm verwendet werden sollen
Eine TOML-Datei könnte so aussehen
[dependencies] requests = ">=2.25.0" flask = { version = "2.0.1", optional = true } [database] type = "postgres" host = "localhost" port = 5432 username = "admin" password = "password123" [database.settings] pool_size = 5 timeout = 30
Diese Dateien funktionieren, indem ein Parser verwendet wird, um den Inhalt der TOML-Datei zu analysieren und dann die Variablen im Programm zu verwenden
Der Grund dafür, dass es gegenüber JSON oder YAML bevorzugt wird, liegt darin, dass es für einen Menschen leicht zu schreiben und zu verstehen ist und sich beim Konfigurationsmanagement bewährt.
Diese Woche hatte ich die Gelegenheit, an einem großartigen Projekt zu arbeiten, Addcom. Dabei handelt es sich um ein CLI-Tool, das Beispieldateien aufnimmt und Inline-Kommentare für die Dateien generiert. Es nutzt die Groq-API, um die Kommentare für die Datei zu generieren
Jetzt kann der Benutzer beim Aufrufen des CLI-Tools einige optionale Argumente definieren, die beim Senden einer API-Anfrage an Groq verwendet werden können, nämlich die folgenden
Nun wäre es für den Benutzer wirklich frustrierend, im CLI-Tool immer wieder denselben Argumentwert anzugeben. Um dies zu vermeiden, habe ich eine TOML-Datei implementiert, die alle zu verwendenden Konfigurationseinstellungen und -werte enthält, sodass das nicht der Fall ist Anstatt die Konfigurationseinstellungen wiederholt anzugeben, kann das Programm einfach in die TOML-Datei schauen und die relevanten Einstellungen anwenden.
Der logische Ablauf für das Programm wäre wie folgt
1) Das CLI-Tool wird im Terminal aufgerufen
2) Wenn keine Argumente vorhanden sind, werden die Variablen aus der TOML-Datei verwendet
3) Wenn die Variablen in der TOML-Datei falsch sind, werden sie nicht verwendet und das Programm wird mit dem Fehlercode 0
beendet
4) Wenn der Benutzer zusammen mit der TOML-Datei auch die Befehlszeilenargumente bereitstellt, werden die Befehlszeilenargumente verwendet
5) Die Operation wird mit den richtigen Argumenten ausgeführt
Um eine beschreibende Übersicht über das Problem zu finden, das ich im Repo angesprochen habe, klicken Sie hier
Um die entsprechende PR zu finden, klicken Sie hier
Bisher musste ich jedes Mal, wenn ich eine PR zusammenführen musste, dies über Github tun, aber dieses Mal habe ich eine wirklich spannende Möglichkeit gefunden, dasselbe lokal zu tun
Ich hatte jemanden, der an der Implementierung einer Funktion für mein CLI-Tool arbeitete. Dieselbe Person erstellte einen Zweig meiner Codebasis und begann mit der Implementierung der Funktion. Sobald sie implementiert war, schob sie den Code in ihren Themenzweig auf ihrem Zweig.
Bevor ich die Änderungen nun genehmigen kann, musste ich die Codeänderungen überprüfen und sicherstellen, dass sie funktionierten und keine beispiellosen Probleme verursachten
Um dies zu erreichen, habe ich die folgenden Schritte implementiert
git remote add <user_name> <user_name/fork>
Der obige Befehl würde eine Remote-Verbindung zu einem Zweig meiner Codebasis hinzufügen
git fetch <user_name/fork>
Dadurch würden alle neuen Zweige aus dem Remote-Repository abgerufen und mein lokaler .git-Ordner aktualisiert
git checkout -b review-change <user_name/fork>
Dadurch würde ein neuer Zweig namens „review-change“ erstellt, der auf dem Themenzweig aufgebaut wäre, um die von der Person vorgenommenen Änderungen überprüfen zu können
Sobald ich die Änderungen überprüft habe, werde ich Folgendes tun
git checkout main git merge review-change
Dadurch würde eine Zusammenführung im Schnellvorlauf erfolgen, da auf meinem lokalen Hauptserver keine Änderungen vorgenommen wurden
git push origin main
Dieser Befehl würde ausgeführt, um die zusammengeführten Änderungen in mein Remote-Repository zu übertragen, wodurch dann automatisch die PR geschlossen würde, die die Person geöffnet hatte.
Diese Woche habe ich wertvolle Erfahrungen bei der Arbeit mit TOML-Konfigurationsdateien und der Verwaltung von Git-Workflows für Codebeiträge gesammelt. Durch die Implementierung von TOML konnten Benutzer wiederverwendbare Konfigurationseinstellungen für das Addcom-Projekt definieren, was die Verwendung des CLI-Tools vereinfachte und den Benutzerkomfort erhöhte. Darüber hinaus habe ich gelernt, wie man Änderungen aus dem Fork eines Mitwirkenden lokal überprüft und zusammenführt, indem man dessen Remote-Repository hinzufügt, die Änderungen abruft und eine Zusammenführung im Schnellvorlauf durchführt.
Das obige ist der detaillierte Inhalt vonEin praktischer Ansatz für TOML-Dateien und Remote-Zweigstellenverwaltung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!