Änderungen in GitHub-Projekten einreichen
Das Schöne an Open Source Software: Jeder kann helfen, korrigieren, Vorschläge machen oder sonstige Änderungen am Code einbringen. Soweit die Theorie. Aber wie funktioniert das auf der wichtigsten Plattform GitHub? Im Folgenden seht Ihr, wie Ihr Änderungen zur Übernahme einreicht und der Projektadmin die Änderungen übernimmt.
Pull Request
Das Zauberwort heißt Pull Request: Pullen heißt in der Welt von git, Änderungen aus einem entfernten Repository zu holen und in den lokalen Arbeitsbereich zu integrieren. Ein Pull Request ist entsprechend eine Aufforderung an den Verwalter eines Projekts, eine bestimmte Änderung zu pullen, also in das Projekt zu integrieren.
Allerdings könnt Ihr nicht einfach direkt in anderer Leute Repositories Änderungen an Dateien vornehmen und diese vorschlagen - Ihr habt natürlich keine Schreibrechte. Ihr braucht zunächst einen Fork des Projekts für Euren eigenen Account, macht darin Eure Änderungen und erstellt einen Pull Request für das "echte", das originale Projekt. Erfreulicherweise nimmt Euch GitHub die Forkerei ab, so dass das weitestgehend im Hintergrund abläuft.
Im Folgenden seht Ihr zunächst das Erstellen eines Pull Requests aus Nutzersicht und dann das Einbauen eines Pull Requests aus Adminsicht.
1. Nutzer: Pull Request erstellen
Zunächst besucht Ihr ein Projekt Eurer Wahl - wenn Ihr einfach mal testen wollt, versucht es mit unserem Test-Repo. Klickt dort auf die Datei, die Ihr ändern wollt.
Über dem Editor seht Ihr dann schon die Meldung: Ihr ändert eine Datei ein einem Repo, für das Ihr keine Schreibberechtigung habt - weshalb GitHub einen Fork angelegt hat, sprich eine Kopie des Repos unter Eurem eigenen Konto. Darin dürft Ihr natürlich schreiben - und könnt so einen Pull Request erstellen. Fügt also im Editor Eure Änderungen ein.
Gebt unter dem Editor noch einen Kommentar zur Änderung ein und bestätigt mit Propose File Change.
GitHub prüft, ob es mit Eurer Änderung zu Konflikten kommen könnte, anschließend könnt Ihr den Vorgang über Create Pull Request und danach eine nochmalige Bestätigung abschließen.
2. Admin: Pull Request einbauen
Der Admin des Projekts sieht nun in seinem Konto Euren Pull Request.
Im nächsten Schritt kann der Admin dann noch kleine Änderungen vornehmen und bestätigt dann mit Merge Pull Request.
Und damit steht dann Eure Änderung im aktuellen Code des Projekts und Ihr werdet bei den Contributors mit aufgeführt.