Einzelnen Beitrag anzeigen

Rollo62

Registriert seit: 15. Mär 2007
4.116 Beiträge
 
Delphi 12 Athens
 
#1

[GIT] Optimaler Workflow für Projekte aus einer Quelle, und mehreren Variationen ?

  Alt 13. Aug 2020, 08:59
Hallo zusammen,

ich würde gerne GIT Workflows optimieren, und möglichst wenig mergen,
falls das überhaupt möglich ist.

Das Problem ist das ich eigentlich eine Quelle habe (und haben möchte), für die Kern-Sourcen.
Diese gibt es aber immer mal in leichten Versionen und Varianten,
weil ich genötigt bin z.B. für Android/iOS und/oder Rx10.3.x und 10.4 verschiedene Wege zu gehen, damit es läuft und kompilierbar ist.

Also es sieht so in der Art aus, das es eigentlich keinen stabilen Master gibt,
sondern eigentlich eher mehrere Master, je nach Konfiguration.

Delphi-Quellcode:
Master -------------------------------------------- # z.B. das ist produktiv für Win OK
Feature Rx10.3 \-----------------------------------
                 \iOS -----------------------------
                 \Android ------------------------- # z.B. das ist produktiv für Android OK
Feature Rx10.4 \-----------------------------------
                 \iOS ----------------------------- # z.B. das ist produktiv für iOS OK
                 \Android -------------------------
Ich bin also oft gezwungen ein Projekt in verschiedenen Features zu pflegen, die dann für mich als Master fungieren.

Leider kann ich das nicht mergen, es sei denn ich würde da mit allen Möglichen IFDEF's und sonstigen Tricks arbeiten.
Eine saubere Trennung ist nur schwer möglich, weil es meistens auch XML, DPROJ, und andere Dateien betrifft.
Das Ganze wird auch noch durch verschiedene OS-Versionen beeinflusst, die dann ganze API's abkündigen oder umstellen.


Ich möchte aber Vermeiden das die Feautures immer weiter auseinanderdriften, und hoffe das die irgendwann doch mal alle in einen Master gemerged werden können.

Meine Frage:
Gibt es für solche Fälle einen perfekten, optimalen Workflow in GIT, sollte ich das evtl. komplett anders strukturieren
(z.B. ein Projekt pro Platform, pro IDE-Version, ...) ?

Wie macht Ihr das ?

Geändert von Rollo62 (13. Aug 2020 um 09:01 Uhr)
  Mit Zitat antworten Zitat