Skip to content
Raven edited this page Jun 7, 2019 · 1 revision

Aktuell gibt es 3 verschiedene Branches im Hauptrepository.

Name Beschreibung
master Dieser Branch ist der Hauptentwicklungsbranch, in dem alle neuen Features eingepflegt werden
tools Dieser Branch enthält die verwendeten Tools (aktuell: Batch Skripte).
base Dieser Branch dient dazu, Änderungen an der Grundstruktur (entweder Ordner oder Makros) vorzunehmen

Warum nicht alles in einem Branch?

Das Problem an der Verwendung eines einzigen Branches ist, dass Änderungen, die für alle wichtig oder interessant wären, nicht in den lokalen Fork eingepflegt werden können, ohne alle Featureänderungen aus dem Hauptbranch ebenfalls zu übernehmen. Das bedeutet, dass man für ein Update der Tools den kompletten SQF Code mit laden müsste, was aber ggf. nicht das ist, was man will.

Dank der extra Branches kann einfach ein PR von dem entsprechenden Branch erstellt werden und die Updates der Tools oder Makros o.Ä. können ohne Ballast in den eigenen Fork übernommen werden.

Welchen Branch nehme ich für was?

Im Prinzip ist es relativ einfach: Wenn du Änderungen an den Tools (also zB irgendwelchen batch Skripten) machen willst, dann verwendest du den tools Branch. Wenn du Änderungen an der generellen Struktur oder an dem von allem verwendeten Makros vornimmst, dann nimmst du den base Branch. Und in allen anderen Fällen, nimmst du den Master Branch.

"Einen Branch nehmen" bedeutet hierbei, dass die Änderungen im eigenen Repo in dem selben Branch passieren (oder einem neuen - siehe unten) und der PR auch in den entsprechenden Branch im Hauptrepo aufgemacht wird. Wenn ich beispielsweise etwas an einem der batch skripte machen will, dann wechsele ich in meinem Fork in den Tools branch (oder erstelle einen dedizierten Branch dafür, was sogar noch besser ist) und nehme darin die Änderungen vor. Den PR mache ich dann von dem Tools Branch in meinem Fork in den Tools Branch im Hauptrepo vor.

Einen dedizierten Branch erstellen

Am allerbesten ist es für jede Anderungsgruppe (also Änderungen, die etwas miteinander zu tun haben) einen neuen Branch im Hauptrepo zu erstellen und mit dem Stand des Zielbranches im Hauptrepo zu synchronisieren.

Hierzu sind folgende Schritte notwendig:

  • WIP
Clone this wiki locally