Was ist der allgemeine Workflow, wenn ich einer Open Source-Anwendung, die ich ursprünglich nicht geschrieben habe, eine Funktion hinzufügen möchte? Wie lerne ich den Code kennen? Wie finde ich die Stelle, die geändert oder hinzugefügt werden muss? Wie kann ich die Änderung tatsächlich vornehmen, ohne etwas anderes zu beschädigen? Wie teste ich, dass noch alles funktioniert?
Was sind die allgemeinen Richtlinien für ein solches Projekt?
open-source
Dani
quelle
quelle
Antworten:
Es gibt ein Protokoll, das jeder mit der Zeit mehr oder weniger wünscht, aber hier ist es, ausgerollt.
Sie beginnen ein wenig selbst im Code zu navigieren
Wenn Sie etwas über den Code nicht wirklich verstehen ...
Sonst
Sie finden den Ort, den Sie ändern möchten.
Wenn Sie sich über kleinere Details wundern, fragen Sie den Autor / die Mailingliste und erläutern Ihre Absichten.
Sie wechseln in das Hauptverzeichnis der Distribution (das oberste, das aus dem Entpacken / Entpacken stammt).
Du
diff -ur . > mypatch.path
Sie senden
mypatch.patch
dem Autor eine Erklärung, was Sie getan haben, warum Sie es getan haben, und (da Sie bereits dort sind) geben Sie deutlich an, dass Sie auf die Rechte an dem Patch verzichten.wenn der / die Autor (en) Ihren Beitrag nicht mögen
Sie überprüfen, ob es eine Möglichkeit gibt, Ihre Änderung als Plugin freizugeben
sonst
Sie flammen über die Situation in Ihrem Blog und veröffentlichen dort den Patch, den Sie kostenlos herunterladen und mit Ihrer Erklärung und Ihren Beschimpfungen ausprobieren können.
Sie verfolgen ab und zu das Fehlersystem / die Mailingliste, um Unterstützung für Ihren Patch zu kaufen. Vermeiden Sie es, gebannt zu werden.
In keinem dieser Fälle geben Sie den Code auf , da es sich um einen sehr anstrengenden und unbelohnenden Prozess handelt, mit dem Sie kaum Schritt halten können. Dadurch werden die Benutzer traurig und verwirrt. Gabeln sollten wirklich nur passieren, wenn ein großes Unternehmen versucht, seine Entscheidungen über ein Stück OSS zu schikanieren .
sonst
Nebenbei : Es gibt eine neue Alternative zum
diff -ur .
Patch und ist der Github-Weg .(jetzt haben Sie eine Kopie ihres Codes auf Ihrem Konto)
und fordern Sie den / die Hauptautor (en) auf, sich Ihr Github-Projekt anzusehen.
Wenn sie es mögen, werden sie synchronisieren .
quelle
Typischerweise.
Wenn es sich um ein zufälliges Betriebssystemprojekt handelt, würden Sie höchstwahrscheinlich hier und da kleinere Fehler beheben.
Schließlich würden Sie eine Reihe von Änderungen als "Patch" einreichen.
Normalerweise würden Sie Commit-Rechte erhalten, wenn Ihre Sachen gut sind.
Ich spreche allgemein und aufgrund der Frage so vage und unspezifisch wie möglich
quelle