2 Stimmen

Handhabung mehrerer Standorte über Git

Die Situation ist folgende: Es gibt 9 Websites, die alle eine ähnliche Codebasis haben, aber es gibt Unterschiede:

  • Typ A: 2 davon könnten als "soziale" Websites betrachtet werden (Veranstaltungen, Nachrichten, Profile, Login)
  • Typ B: 3 davon sind Ihre regulären Websites (Veranstaltungsmodul, Nachrichten, usw.)
  • Typ C: 4 davon sind kleine Websites vom Typ "Broschüre" (nur Seiten und ein Kontaktformular)

Jetzt habe ich über eine effiziente Methode zur Bereitstellung dieser Sites nachgedacht.

Wenn ich eine Änderung an einem dieser Standorte vornehme, gilt sie manchmal nur für einen Standort, manchmal für beide Standorte vom Typ A. Einige Änderungen würden sich auf alle Sites vom Typ A und B auswirken usw.

Ich versuche gerade, dies mit Git zu erreichen. Wie kann ich Änderungen effizient in mehreren Ordnern verteilen?

Ich habe versucht, Verzweigungen für A, B und C zu erstellen, aber ich habe das Gefühl, dass das nicht wirklich die Lösung ist. Wenn zum Beispiel die Datei xxx.txt in Zweig A existiert und ich zu B wechsle, ist sie immer noch da.

Ich denke, ich sollte herausfinden, welche Dateien gemeinsam genutzt werden und welche nicht, und dann einen Weg finden, alles miteinander zu kombinieren.

all-sites
|-- a
|-- b
|-- c
`-- static

1voto

Greg Bacon Punkte 127209

Klingt, als wollten Sie die Submodule mit einer Repo-Struktur wie z.B.:

  1. gemeinsamer Code für alle Standorte

  2. gemeinsamer Code für Standorte des Typs A, aber nicht in (1)

  3. gemeinsamer Code für Standorte des Typs B, aber nicht in (1)

  4. gemeinsamer Code für Standorte des Typs C, aber nicht in (1)

  5. Standort 1 (Typ A)

    • Teilmodul zeigt auf (1)
    • Teilmodul zeigt auf (2)
  6. ...

0voto

samoz Punkte 54011

Warum haben Sie nicht einfach Unterordner für jedes Ihrer Projekte?

Global
|---GlobalA
|   |
|   SiteA1
|   |
|   SiteA2
|
|---GlobalB
|   |
|   SiteB1
etc...

Das klingt so, als würde es besser zu dem Vererbungsschema passen, das Sie zu verwenden versuchen.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X