2010-12-02 6 views
7

Ich habe ein Git Repo auf einem Server erstellt und möchte es von mehreren Personen verwendet werden, d. H. Benutzer, die zur gleichen Unix-Gruppe gehören. Es hat auch eine Arbeitskopie, weil es für uns nützlich sein kann, eine gemeinsame Arbeitskopie zu haben.Git: Repo für mehrere Benutzer auf einem Server

Also ich besitze die besitzende Gruppe dieses Git Repo-Verzeichnisses zu dieser Unix-Gruppe.

Das Problem ist, jedes Mal, wenn jemand zu diesem Repository drängt, haben die neuen Dateien/Verzeichnisse den Besitzer auf den Benutzernamen dieses Benutzers und seiner Gruppe eingestellt, aber nicht auf unsere gemeinsame Gruppe. Außerdem werden all diese neuen Dateien/Verzeichnisse rwxr-xr-x.

Ich versuchte git config core.sharedRepository group, aber das funktioniert nicht wirklich. Es macht jetzt Dateien/Verzeichnisse wie rwxrwsr-x aber hat immer noch die falsche Gruppe gesetzt.

Antwort

11

Ok, fand es heraus.

Die erste wichtige Sache (was ich bereits getan haben) war:

git config core.sharedRepository group 

Der zweite war:

chmod g+s -R . 
+0

Wenn Sie mehrere Repos hinzufügen, müssen Sie dies wiederholen. –

+5

'git init --shared = group' macht das für Sie, auch für ein bestehendes Repo. – Tobu

3

Ich würde Sie gitolite für jede Rechteverwaltung sehr empfehlen innerhalb einer Organisation verwenden und Git. Dies hat die Verwaltung der Repos so viel einfacher gemacht.