Derzeit habe ich ein paar SVN-Repositories und es sieht so aus:
Customer1 (this is a proper "SVN Repository")
project1
foo82
trunk
tags
branches
bar01
trunk
tags
branches
project2
...
project3 ...
...
Customer2 (this is a proper "SVN Repository")
tool1
windows-version
trunk
tags
branches
mac-version
trunk
tags
branches
server-component
trunk
tags
branches
ios-app
trunk
tags
branches
tool2
(same subfolders as tool1)
tool3
(same subfolders as tool1 with slight modifications)
Customer3
(similarily complicated folder structure)
... (about 5 more customers) ...
Ich würde das alles gerne irgendwie auf git umstellen. Also werde ich wahrscheinlich ein paar Repositories haben:
foo82
bar01
tool1-windows-version
tool1-mac-version
tool1-server-component
tool1-ios-app
tool2-windows-version
tool2-mac-version
tool2-server-component
tool2-ios-app
... (150 more projects) ...
Das Problem ist nun, dass sie alle auf der gleichen Hierarchieebene sind. Ich möchte die Git-Repositories in eine Hierarchie wie platzieren
Customer1 (this is not a repository, just a folder!)
project1 (this is not a repository, just a folder!)
foo82.git (this is a git repository)
bar01.git
project2 (this is not a repository, just a folder!)
... (here lie a bunch of git repositories)
Customer2 (this is also not a git repository, just a folder!)
Gibt es ein Tool, mit dem ich Hunderte von Git-Repositorys verwalten und die Repositorys in verschachtelte Gruppen einteilen kann? Ich kann nicht sehen, wie das zB mit GitHub erreicht werden kann. Ich möchte Zugriffsrichtlinien für Gruppen (und nicht nur für einzelne Repositorys) definieren können. Ich möchte beispielsweise sagen, dass Benutzer1, Benutzer2 und Benutzer3 Kunden1 lesen / schreiben können und Benutzer4-Benutzer6 Kunden2 lesen / schreiben können und Benutzer1-Benutzer6 alle Repos lesen / schreiben können und Benutzer7-8 alle Repos lesen / schreiben kann. User9 ist der Administrator für alles unter Customer2 und User10 ist der Superuser.
Es ist mir egal, wie die Repositorys tatsächlich auf dem Dateisystem des Servers gespeichert sind. Ich bin froh, wenn ich nur eine Oberfläche habe, die so tut, als wären sie ordentlich in Gruppen organisiert, und auf der ich Zugriffsrichtlinien für ganze "Ordner" festlegen kann. Wenn die tatsächlichen Git-Repository-URLs auch die sichtbare Projektstruktur widerspiegeln, wäre es schön.
Oder irgendwelche Tipps, wie man ein Administrator für über 100 Git-Repositories ist, ohne verrückt zu werden.