2016-10-07 3 views
0

Ich habe ein personal user account von github gekauft.Laden Sie verschiedene Mitarbeiter in verschiedene Unterordner eines Repositorys ein

Zum Beispiel habe ich ein Repository repo erstellt, und es hat zwei Unterordner: app1, app2.

Weiß jemand, ob es möglich ist, collaborator1 für die app1 Unterordner zu laden, und collaborator2 für die app2 Unterordner einladen.

Wenn dies mit personal user account nicht möglich ist, ermöglicht organisation account dies?

PS: Ich habe einige andere Dateien (zB test.sh) unter repo, die beide verwenden app1 und app2, also wenn ich zwei getrennte Repositories für app1 und app2 (statt einer ganzen repo) schaffen, werde ich nicht in der Lage sein setze diese Testdateien in git.

Antwort

0

Dies scheint ein guter Fall für Git Submodule zu sein.

Wie bereits erwähnt, müssen Sie zunächst separate Repositories für app1 und app2 erstellen. Diese sind völlig unabhängig und kennen sich nicht voneinander, Sie können daher separate Berechtigungen haben.

Sie können dann app1 und app2 als Submodule im Repository repo hinzufügen.

In repo Repository, entfernen Sie die App1 und App2 Verzeichnisse (nach ihrer jeweiligen repos Schaffung, natürlich) und führen:

git submodule add [email protected]/username/app1 
git submodule add [email protected]/username/app2 

diesen zwei Verwahrungs wird als Verzeichnisse in der Wurzel des repo Repository hinzugefügt werden, und wird in der neu erstellten Datei .gitmodules nachverfolgt. Die Testscripts müssen nicht geändert werden, da sie nur die Verzeichnisse als normal sehen.

Benutzer können app1 und app2 als unabhängige Repositorys Kasse, aber Sie können auch mit den folgenden all den Code erhalten:

git clone --recursive [email protected]/username/repo 

Oder wenn Sie bereits haben repo geklont Sie die Submodule aktualisieren können:

git submodule update --init 

Weitere Informationen finden Sie in der Dokumentation git submodule.

1

Es ist nicht möglich, Berechtigungen für Ordner in einem einzelnen Repository zu definieren, nicht einmal mit einem Organisationskonto. Ich würde vorschlagen, Ihr Repository in separate Repositories aufzuteilen, um benutzerdefinierte Berechtigungen für jeden dieser Repositories einzurichten.

Verwandte Themen