De:Eigenen Code beitragen - OpenSlides/OpenSlides GitHub Wiki
Zunächst solltest Du auf Deinem lokalen Rechner das OpenSlides Repository klonen:
$ git clone https://github.com/OpenSlides/OpenSlides.git
Vor neuen Änderungen bringe den main-Branch auf den aktuellen Stand:
$ git fetch origin
$ git checkout main
$ git pull main
Danach erstelle Dir einen neuen Branch für Dein geplantes Feature:
$ git checkout -b MyFeatureBranch
Jetzt kannst Du Dateien im OpenSlides-Verzeichnis verändern und Dein Feature einpflegen, dokumentieren und testen.
Mehrere Commits sollten mit git rebase -i HEAD~<Anzahl der Commits>
in einen einzigen Commit zusammengefasst werden.
Sollte sich der Hauptstrom in der Zwischenzeit weiter entwickelt haben, musst Du zunächst den main-Branch aktualisieren und anschließend Deine Arbeit an dessen Spitze setzen:
$ git checkout main
$ git fetch origin
$ git pull main
$ git checkout MyFeatureBrnach
$ git rebase main
Wenn alles fertig ist, enthält Dein Feature-Branch nur einen zusätzliche Commit mit allen Änderungen inklusive Codedokumentation, Tests und PEP8-Fixes sowie einer aussagekräftigen Commit-Nachricht. Gern kann in der ersten Zeile eine Kurzzusammenfassung und nach einer Leerzeile eine ausführliche Beschreibung des neuen Commits gegeben werden.
Nun benötigst Du einen Github-Account, mit dem Du einen Fork vom OpenSlides-Repository erstellst. In diesem kannst Du nun Deinen Feature-Branch einstellen.
$ git remote add MyGitHub [email protected]:<username>/OpenSlides.git
$ git push MyGitHub MyFeatureBranch
Schließlich kannst Du bei GitHub einen Pull Request zum OpenSlides Haupt-Repository stellen.
Bei Fragen helfen die Core-Entwickler jederzeit gern weiter. Informationen zum Vorgehen bei Django, an das wir uns anlehnen wollen, findest Du auch hier.