Frage von Andi1888, 8

Wie kann ich einen zentralen .git Ordner verwenden?

Hallo,

ich nutze für ein Softwareprojekt Git. Als GUI verwende ich Git Extensions. Meine Ordnerstruktur sieht wie folgt aus:

C:\Git\Projekte\Softwarestand_1 C:\Git\Projekte\Softwarestand_2 C:\Git\Projekte\Softwarestand_3

Alle Softwarestände basieren auf dem selben Repository, jedoch hat jeder Softwarestand eigene Anpassungen. Nun habe ich in jedem Softwarestand Ordner den obligatorischen .git Ordner, sieht also wie folgt aus:

C:\Git\Projekte\Softwarestand_1.git C:\Git\Projekte\Softwarestand_2.git C:\Git\Projekte\Softwarestand_3.git

Nun ist der .git Ordner jeweils um die 10 GB groß.

Nun meine Frage:

Kann ich in einem übergeordneten Ordner also z.B.

C:\Git\Projekte.git

den .git Ordner anlegen und von den Softwarestand Ordnern auf diesen verweisen?

Dies würde mir zum einen Speicherplatz, zum anderen Zeit beim "fetch all" sparen, da ich dies nicht für alle drei Ordner sondern nur einmal machen müsste.

Danke

Antwort
von coding24, 8

Jetzt mal von mir eine blöde Frage: warum willst du das so kompliziert machen?

Warum wechselst du nicht einfach zwischen den Branches hin und her? Bzw. checkst dir immer jeweils die Revision, die du gerade brauchst aus? Oder benutzt deine IDE dafür?

Ansonsten kannst du natürlich nicht innerhalb eines Ordners dieselbe Datei in zwei unterschiedlichen Varianten unter demselben Namen speicher. Das geht nicht.

Kommentar von Andi1888 ,

Weil ich dann jedes Mal das System komplett neu bauen muss und das ca. eine Stunde in Anspruch nimmt.

Kommentar von coding24 ,

Na gut, das musst du bei Änderungen am Code ja sowieso.

Warum legst du das dann nicht als Binary ab? Und wie erwähnt: was ist der Grund, warum du parallel drei Verschiedene Versionsstände derselben Software betreiben musst? Vielleicht lässt sich dahingehend ja etwas optimieren?

Kommentar von webflexer ,

Ich würde auch die verschiedenen Releases mit den Branches aufteilen und für das "Bauen" dann Grunt oder Gulp verwenden.

Kommentar von coding24 ,

Fertige Releases würde ich generell als Tag hinterlegen und alle Features über Feature-Flags in der Konfiguration steuern.

Ob man jetzt unbedingt Grunt oder Gulp braucht sei mal dahingestellt. Wer im Webumfeld arbeitet, kann genausogut Phing, Robo und was weiß ich nehmen. Einige bilden es dann sogar über Composer ab. Wobei ich bei 10 GB Folder-Size eher nicht denke, dass er ne Webseite baut - da wird was "richtiges" wie ein JAVA oder .NET-Projekt dahinterstecken. Da würde ich sicher kein Grunt oder Gulp empfehlen :-)

Keine passende Antwort gefunden?

Fragen Sie die Community