„Wenn ein Arbeiter seine Arbeit gut machen will, muss er zuerst seine Werkzeuge schärfen.“ – Konfuzius, „Die Gespräche des Konfuzius. Lu Linggong“
Titelseite > Programmierung > Wie funktionieren Pull-Requests also nochmal? OSD#3

Wie funktionieren Pull-Requests also nochmal? OSD#3

Veröffentlicht am 07.11.2024
Durchsuche:998

In meinem vorherigen Beitrag habe ich über den Start einer Open-Source-GenAI-basierten Terminalanwendung gesprochen. Diese Woche bestand die Aufgabe darin, eine neue Funktion zum Projekt eines anderen Benutzers beizutragen. Da wir mit jemand Neuem zusammenarbeiten mussten, habe ich mich mit Lily zusammengetan, die eine App mit ähnlichen Code-Verbesserungsfunktionen wie ich entwickelt hat – nur dass ihre App eine Rattenpersönlichkeit hat!

Schauen Sie sich gerne ihr Projekt rat-assistant an, wenn Sie etwas Zeit haben.

Ihr Code ist in TypeScript geschrieben, und um ehrlich zu sein, habe ich nicht so viel Erfahrung damit. Ich hatte ein bisschen Angst, neue Funktionen hinzuzufügen, ohne versehentlich etwas kaputt zu machen. Es ist lustig – TypeScript kommt mir im Vergleich zu anderen OOP-Sprachen wie Java oder C viel schwieriger vor. Aber ich dachte, dass dies eine gute Gelegenheit zum Lernen wäre, also beschloss ich, einzutauchen.

Unser Ziel war es, eine neue Option (-t) hinzuzufügen, um die Token-Nutzung sowohl für die Antwort als auch für die Eingabeaufforderung anzuzeigen. Also habe ich zunächst eine Ausgabe in ihrem Repo geöffnet, um die Funktion zu skizzieren, und dann das Projekt so geforkt, dass es lokal funktioniert.

Die App nutzte die GROQ-API für ihre LLM-Funktionen, und glücklicherweise gab es eine einfache Möglichkeit, über das Feld „Nutzung“ in der API-Antwort auf Informationen zur Token-Nutzung zuzugreifen:

So how does Pull requests work again? OSD#3

Da die App Yargs für Befehlszeilenargumente verwendete, war das Hinzufügen einer weiteren Option ziemlich einfach. Ich habe es so gestaltet, dass die App am Ende der Ausgabe zusammen mit der KI-Antwort Token-Informationen anzeigt, wenn der Benutzer -t oder --token-usage angibt. Ich habe es ein paar Mal getestet und sichergestellt, dass bestehende Funktionen nicht beeinträchtigt werden. Als das bestätigt wurde, wurde der Code an meinen Fork gepusht und ich stellte eine Pull-Anfrage.

Es ist schon eine Weile her, seit ich eine Pull-Anfrage gestellt habe, also habe ich schnell nach den Befehlen gegoogelt und herausgefunden, dass es eine einfache Möglichkeit gibt, dies über VS Code zu tun (im Ernst, was wäre ich ohne?).

Ich habe eine kurze Erklärung der neuen Funktion hinzugefügt und die Pull-Anfrage gesendet:

So how does Pull requests work again? OSD#3

Da habe ich vor ein paar Stunden die Benachrichtigung über Lilys Pull-Anfrage in meinem Repo gesehen. Ich habe den Code schnell überprüft, lokal getestet und es hat großartig funktioniert! Ich habe getestet, ob es Probleme mit anderen Optionen gibt, aber es gab keine. Ich habe die Gemini-API verwendet, sie unterschied sich also von der Open AI Chat Completion API, die üblicherweise von anderen verwendet wird, aber sie hat es trotzdem geschafft, dass sie funktioniert.

Ich habe keine Probleme oder Verbesserungsvorschläge gefunden, also habe ich ihre Pull-Anfrage angenommen und sie in den Hauptzweig eingefügt. Es hat ziemlich viel Spaß gemacht (und war nervenaufreibend), wenn jemand zu Ihrem Code beigetragen hat, weil Sie nicht wissen, was Sie erwartet und ob er aufgrund Ihres Runencodes Probleme haben würde.

Aber am Ende verlief alles reibungslos und ich lernte zu schätzen, wie große Open-Source-Projekte zusammenarbeiten und sich durch Pull-Requests asynchron verbessern.

Freigabeerklärung Dieser Artikel ist abgedruckt unter: https://dev.to/bregwin/so-how-does-pull-requests-work-again-osd6003-19o3?1 Bei Verstößen wenden Sie sich bitte an [email protected], um ihn zu löschen Es
Neuestes Tutorial Mehr>

Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.

Copyright© 2022 湘ICP备2022001581号-3