Skip to content

Anleitung für Contributor

WGPSenshi edited this page May 14, 2020 · 2 revisions

How to contribute

OPT Repositories

Es gibt 4 getrennte Repositories. Eine genaue Beschreibung ist in jedem Repo einsehbar (README).

  • Servermod Beinhaltet Skripte und Konfigs. Soll zukünftig alles beinhalten, was momentan noch in der Mission herumliegt
  • Clientmod Beinhaltet alles, was nicht in die Servermod darf. Dies sind primär: Klassen-Konfigs (cpp), Assets (Dialoge, Bilder, Audio, ...)
  • Mission Beinhaltet momentan noch alles Mögliche (legacy), sollte in Zukunft nur noch die reine Mission (mission.sqm) und das allernötigste an description.ext beinhalten. Alle Skripte sollen in Servermod mit CLib erneuert werden.
  • Tools Beinhaltet Skripte, die das bequeme Bauen, Packen und Ausführen einer Dev-Umgebung erlauben. Wärmstens empfohlen!!!

Für effektives Entwickeln wird wärmstens empfohlen, sich Forks von jedem Repo anzulegen und diese auch lokal aktuell zu halten, so dass man mit den devtools auch immer mit den aktuellsten (dev)-Versionen entwickeln kann.

Fork-Workflow

Der Forking Workflow ist ein Standardworkflow, um mit Git zu arbeiten, welchen wir nutzen. Schöne Beschreibungen finden sich hier: Atlassian Git Tutorial (Sehr schön, aber nur englisch)
Seibert Media Blog (deutsch)

In ganz kurz: Dieser Workflow erlaubt es jedem Contributor, frei seine eigenen Änderungen und Arbeitsweisen zu nutzen, um seinen eigenen Code zu verwalten. Das zentrale Repository, aus welchem die tatsächlichen öffentlichen Serverpakete generiert werden, bleiben davon unberührt. Das Einführen neuer Features und neuen Codes erfolgt über einen kontrollierten Review-Prozess (Pull Requests), so dass eine gewisse Codequalität und Fehlerprüfung gewährleistet werden kann, ohne die jeweiligen Contributor einzuschränken.

Wie tracke ich meine eigenen Änderungen? Commits, Push & Pull

Jede logische Änderung sollte in einem eigenen Commit mit aussagekräftiger Commit-Message zusammengefasst werden (kein "test123"). Innerhalb des eigenen Forks herrscht hier ansonsten Freiheit bzgl Branches, Squashing etc. .

Wie kommen meine Änderungen in die OPT? Pull Requests

Will man seinen Code nun in die OPT bringen, so erfolgt dies über Pull Requests.

Tutorial