2013-04-29 11 views
5

Ich versuche, die Zugriffskontrolle nur per Repo einzurichten (mit den drei Berechtigungen no-access, read-only, read/write). Ich habe eine externe Anwendungskontrolle, was das Synchronisieren von Admin-Git-Repos (wie z. B. was Gitosis und Gitolit bereitstellen) nicht praktikabel macht.Zugriffskontrolle mit Git auf dem Server (nicht Gitosis oder Gitolit)

Was perfekt funktionieren würde, ist ein Setup, mit dem ich einfach Systembefehle aufrufen kann, um Benutzern (SSH-Schlüssel) Zugriff zu gewähren, Repos zu erstellen und Repos zu löschen. zum Beispiel:

git-acl grant R user1.pub /path/to/repo.git - Grants Benutzer1 schreibgeschützten Zugriff auf den Repo git-acl grant RE user2.pub /path/to/repo.git - Grants/Schreibzugriff auf den Repo lesen BENUTZER2 git-acl create /path/to/repo2.git - Repo

etc ... Erstellt

Weiß jemand, von einem Werkzeug wie diesem?

+0

Dies ist kein CLI-Tool, aber es kann am Ende wird, was Sie mit http://gitlab.org/ –

Antwort

0

Zunächst können Sie einfach gitolite skripten, um einen Benutzer zu einem Repo hinzuzufügen, indem Sie die Datei gitolite.conf ändern und zurückschieben.

Wenn Sie ein anderes System wollen, weiß ich nur über gitlab-shell, aber es scheint ziemlich verknüpft mit gitlabhq.

+1

Dank greifen, ich hatte Angst, dass, eigentlich. Ein Teil meines Fleisches mit gitoite ist die Tatsache, dass alles in einer einzigen Konfigurationsdatei gespeichert ist, also muss ich entweder suchen/ersetzen oder eine Datei neu kompilieren (was es für größere Implementierungen schmerzhaft macht), zusätzlich höre ich das, wenn diese Datei wird groß, gitolith selbst verlangsamt sich. – jaq

+0

@jaq ja, aber wenn die Datei so groß wird, würde ich * mehrere * gitolite einrichten;) – VonC

Verwandte Themen