Als ich heute morgen durch Zufall bei Heise sah, dass ein großer Teil der Entwicklungsumgebungen von Jetbrains jetzt in der neuen Version 2017.3 erschienen ist, habe ich als Solus-Nutzer erst mal im Third Party Repo nachgesehen, ob dort schon die aktuellen Versionen liegen.
Da das nicht der Fall war, dachte ich mir: “Tuwat” (übrigens das Motto des diesjährigen 34C3 in Leipzig ;-))
Also habe ich mich 2 Stunden hingesetzt und 6 der 8 Jetbrains IDEs im Repo aktualisiert (für DataGrip und Rider gibt es noch keine Version 2017.3).
Das war mein erster echter Beitrag zu einem Open Source Projekt – wenn man mal von meinem eigenen Github/Gitlab-Repo absieht.
Im Folgenden möchte ich ein wenig auf die Schritte auf dem Weg von (fast) kompletter Ahnungslosigkeit zum ersten Pull Request und dessen Merge eingehen.
Zunächst einmal sollte man ein Github-Konto haben und schon mal eigenen Code auf Github hochgeladen haben. Ich werde die benötigten Befehle trotzdem noch mal dazu schreiben.
Wenn man nun zu einem Open Source Projekt beitragen möchte, muss man dieses zunächst einmal forken.
Dazu einfach auf „Fork“ klicken. Github erstellt jetzt eine exakte Kopie des „Master“-Branch als neues Repo im eigenen Account.
Ab hier braucht man die Kommandozeile.
Das so neu entstandene Repo muss man mit git clone auf den lokalen Computer klonen.
Dann muss man einen neuen Branch mit git checkout -b foobarerstellen. „foobar“ dient hier als Platzhalter für den Namen, den man sich für den neuen Branch aussucht.
Nun kann man die gewünschten Änderungen am Projekt vornehmen.
Die geänderten Dateien muss man dann mit git add zum Commit vormerken und die Änderungen dann mit git commit -m „Commitbeschreibung“ committen.
Nachdem also alle benötigten Änderungen zum Branch hinzugefügt wurden, muss dieser natürlich wieder auf Github hochgeladen werden.
Dazu wird der Befehl git push origin foobar benötigt.
Damit muss die Änderung nur noch an den Administrator des Projekts übermittelt werden.
Zurück auf der Github-Website kann man seine Änderungen jetzt in einen Pull Request überführen.
Dazu klickt man auf „Compare & pull request“.
Nun muss man nur noch ein paar Daten einfüllen.
Unter „base fork“ ist bereits das Repo eingetragen, das am Anfang geforkt wurde.
Unter „head fork“ steht der eigene Fork und unter „compare“ steht der neu erstellte Branch.
Man kann nun noch den Titel des Pull Requests ändern und einen Kommentar bezüglich der eigenen Änderungen hinterlassen.
Wenn man damit fertig ist, klickt man auf „Create pull request“.
Der Admin des Ursprungsprojekts kann nun die Änderungen ansehen und darüber entscheiden, ob diese gemerged werden sollen.
Ist der Admin mit den Änderungen einverstanden und bestätigt den Pull Request wird der Code gemerged und steht nun allen zur Verfügung.
Ich hoffe, ich konnte mit diesem Artikel ein wenig Licht ins Dunkel der Pull Requests bringen.
Ich wünsche allen Lesern ein „Happy Hacking“ 😉
3 comments On Mein erster Pull Request bei Solus
Pingback: NerdZoom Podcast Folge 2 – Niemand hat die Absicht über Technik zu reden – NerdZoom ()
Pingback: Pakete, Podcasts und Programme – ahahn94's Blog ()
Pingback: NerdZoom Podcast Folge 2 - Niemand hat die Absicht über Technik zu reden - NerdZoom.de ()