Wie man zum Code beiträgt
Sie möchten zum Nette Framework beitragen und benötigen eine Orientierung über die Regeln und Verfahren? Dieser Leitfaden für Anfänger zeigt Ihnen Schritt für Schritt, wie Sie effektiv zum Code beitragen, mit Repositories arbeiten und Änderungen implementieren können.
Vorgehensweise
Um zum Code beizutragen, ist es unerlässlich, ein Konto auf GitHub zu haben und mit den Grundlagen der Arbeit mit dem Versionskontrollsystem Git vertraut zu sein. Wenn Sie nicht mit Git vertraut sind, können Sie sich den Leitfaden git – the simple guide ansehen und gegebenenfalls einen der vielen grafischen Clients nutzen.
Vorbereitung der Umgebung und des Repositorys
- Erstellen Sie auf GitHub einen Fork des Repositorys des Pakets, das Sie bearbeiten möchten.
- Klonen Sie dieses Repository auf Ihren Computer.
- Installieren Sie die Abhängigkeiten, einschließlich des Nette Testers, mit dem
Befehl
composer install
. - Überprüfen Sie, ob die Tests funktionieren, indem Sie
composer tester
ausführen. - Erstellen Sie einen neuen Branch basierend auf der letzten veröffentlichten Version.
Implementierung eigener Änderungen
Nun können Sie Ihre eigenen Codeänderungen vornehmen:
- Programmieren Sie die gewünschten Änderungen und vergessen Sie nicht die Tests.
- Stellen Sie sicher, dass die Tests erfolgreich verlaufen, indem Sie
composer tester
verwenden. - Überprüfen Sie, ob der Code dem Codierungsstandard entspricht.
- Speichern (committen) Sie die Änderungen mit einer Beschreibung in diesem Format.
Sie können mehrere Commits erstellen, einen für jeden logischen Schritt. Jeder Commit sollte für sich genommen sinnvoll sein.
Senden der Änderungen
Sobald Sie mit den Änderungen zufrieden sind, können Sie sie senden:
- Senden (pushen) Sie die Änderungen auf GitHub in Ihren Fork.
- Senden Sie sie von dort an das Nette-Repository, indem Sie einen Pull Request (PR) erstellen.
- Geben Sie in der Beschreibung ausreichend Informationen an.
Einarbeitung von Anmerkungen
Ihre Commits werden nun auch von anderen gesehen. Es ist üblich, dass Sie Kommentare mit Anmerkungen erhalten:
- Verfolgen Sie die vorgeschlagenen Änderungen.
- Arbeiten Sie sie als neue Commits ein oder fügen Sie sie mit den vorherigen zusammen.
- Senden Sie die Commits erneut auf GitHub, und sie erscheinen automatisch im Pull Request.
Erstellen Sie niemals einen neuen Pull Request, um einen bestehenden zu bearbeiten.
Dokumentation
Wenn Sie die Funktionalität geändert oder eine neue hinzugefügt haben, vergessen Sie nicht, sie auch zur Dokumentation hinzuzufügen.
Neuer Branch
Wenn möglich, führen Sie Änderungen gegenüber der letzten veröffentlichten Version durch, d.h. dem letzten Tag in diesem
Branch. Für den Tag v3.2.1
erstellen Sie einen Branch mit diesem Befehl:
git checkout -b neuer_branch_name v3.2.1
Coding Standards
Ihr Code muss dem Codierungsstandard entsprechen, der im Nette Framework verwendet wird. Zur Überprüfung und Korrektur des Codes steht ein automatisches Werkzeug zur Verfügung. Es kann über Composer global in einem von Ihnen gewählten Ordner installiert werden:
composer create-project nette/coding-standard /pfad/zu/nette-coding-standard
Nun sollten Sie das Werkzeug im Terminal starten können. Mit dem ersten Befehl überprüfen Sie und mit dem zweiten
korrigieren Sie den Code in den Ordnern src
und tests
im aktuellen Verzeichnis:
/pfad/zu/nette-coding-standard/ecs check
/pfad/zu/nette-coding-standard/ecs check --fix
Commit-Beschreibung
In Nette haben die Betreffzeilen von Commits das Format: Bereich: Zweck [Referenz]
z.B. Presenter: fixed AJAX detection [Closes #69]
- Bereich gefolgt von einem Doppelpunkt
- Zweck des Commits in der Vergangenheitsform; beginnen Sie nach Möglichkeit mit einem der folgenden Worte:
added
(neue Funktion hinzugefügt),fixed
(Fehlerbehebung),refactored
(Codeänderung ohne Verhaltensänderung),changed
,removed
- Wenn der Commit die Abwärtskompatibilität bricht, fügen Sie
BC break
hinzu - Eine optionale Verknüpfung zum Issue Tracker wie
(#123)
oder[Closes #69]
- Nach dem Betreff kann eine Leerzeile folgen und dann eine detailliertere Beschreibung, einschließlich z.B. Links zum Forum
Beschreibung des Pull Requests
Beim Erstellen eines Pull Requests ermöglicht Ihnen die GitHub-Oberfläche die Eingabe eines Titels und einer Beschreibung. Geben Sie einen aussagekräftigen Titel an und liefern Sie in der Beschreibung so viele Informationen wie möglich über die Gründe für Ihre Änderung.
Es wird auch eine Kopfzeile angezeigt, in der Sie angeben, ob es sich um eine neue Funktion oder eine Fehlerbehebung handelt und ob die Abwärtskompatibilität beeinträchtigt werden könnte (BC break). Wenn ein zugehöriges Problem (Issue) vorhanden ist, verweisen Sie darauf, damit es nach Genehmigung des Pull Requests geschlossen wird.
- bug fix / new feature? <!-- #issue numbers, if any -->
- BC break? yes/no
- doc PR: nette/docs#? <!-- highly welcome, see https://nette.org/de/writing -->