git / gitolit: großes git repo mit mehreren mini-projekten

686
Jay

Ich bin ziemlich neu in der ganzen Versionskontrollsache, und noch mehr bei git. Ich habe vor kurzem git auf meinen Computern installiert und auf einem NAS-Server eingerichtet.

Ich habe jedoch mehrere Clientordner mit mehreren Projektordnern pro Clientordner.

Jeder dieser Client-Ordner ist ein riesiger Repo, der alle darin enthaltenen Projekte umfasst.

Was ich mich wundere ist, gibt es eine Möglichkeit, dies auseinander zu brechen? So zum Beispiel:

  1. Der NAS ist mein "Ursprung" und hat Gitolit installiert

  2. Auf Computer1 habe ich jeden Projektordner in einem Clientordner erstellt (sauberer Zweig),

  3. In computer2 kann ich nicht eine neue Kasse des Client - Zweig (weil alle Projekte in diesem Zweig alle abgeschlossen sind und ich keine funktionierende Kopie davon müssen), aber ich tun Sie einen Ordner neues Projekt haben für diesen Client „newproject ".

Gibt es eine Möglichkeit, von Computer2 auf das NAS-Repo zuzugreifen und zu pushen?

Oder gibt es vielleicht eine bessere Möglichkeit, all dies zu organisieren?

1

1 Antwort auf die Frage

2
VonC

Eine bessere Organisation von Git-Repositorys besteht darin, pro Client-Projekt ein Repo zu haben (dh viele Repos in Ihren Client-Ordnern: ein .git in jedem Client-Ordner-Unterverzeichnis, das einem Projektstammverzeichnis entspricht).

Die Idee, ein großes Repo pro Client zu haben, ist nicht unbedingt eine gute Idee, insbesondere:

  • wenn dieser Ordner aus Projekten besteht, die sich unabhängig voneinander entwickeln können.
  • wenn die Gesamtsumme sehr groß ist (was bedeutet, dass jeder Klon groß sein wird)

Wenn einige dieser Projekte miteinander verknüpft sind, können Sie sie immer noch als ein (übergeordnetes) Repo mit dem Begriff der Submodule anzeigen .