2 Stimmen

Zugriff auf Git-Repositories mit Redmine, Berechtigungsproblem

Ich habe Ubuntu 10.04 Server mit Redmine installiert und auch Git ist installiert, ich benutze Gitolite.

Wenn ich vom PC des Benutzers auf den Server schiebe, ist alles in Ordnung, was Git betrifft. Aber um das Repository von Redmine zu sehen, muss ich jedes Mal ausführen: chmod o+rw -R /path/to/the/repository/folder und dann kann ich das Repository von Redmine sehen. Aber das ist lästig, es jedes Mal zu tun, wenn ich auf dem Server zu schieben.

Ich dachte daran, einen Cron-Job zu erstellen, der das automatisch erledigt, aber ich glaube nicht, dass das eine saubere Lösung ist.

4voto

Andrew Marshall Punkte 92252
git config core.sharedRepository all

De la git-config Dokumentation :

Wenn group (oder true ), wird das Repository für mehrere Benutzer in einer Gruppe gemeinsam nutzbar gemacht (wobei sichergestellt wird, dass alle Dateien und Objekte für die Gruppe schreibbar sind). Wenn all (oder world o everybody ), ist das Repository für alle Benutzer lesbar, zusätzlich zur gemeinsamen Nutzung durch die Gruppe. Wenn umask (oder false ), verwendet Git die von umask(2) gemeldeten Berechtigungen. Wenn 0xxx , wobei 0xxx eine oktale Zahl ist, haben die Dateien im Repository diesen Moduswert. 0xxx überschreibt den umask-Wert des Benutzers (während die anderen Optionen nur die angeforderten Teile des umask-Wertes des Benutzers überschreiben). Beispiele: 0660 macht das Projektarchiv für den Eigentümer und die Gruppe lesbar/schreibbar, aber für andere unzugänglich (gleichbedeutend mit group es sei denn, umask ist z.B. 0022 ). 0640 ist ein Repository, das für Gruppen lesbar, aber nicht für Gruppen schreibbar ist. Siehe git-init(1). Standardmäßig falsch.

4voto

gentooboontoo Punkte 4313

Um Redmine Zugriff auf alle von Gitolite gehosteten Repositories zu geben, müssen Sie Folgendes ändern $HOME/.gitolite.rc :

$REPO_UMASK = 0027; #=> 'rwxr-x---'
# use 0022 instead to give rx permissions to others (not recommended)

dann fügen Sie den Benutzer, der den Webserver betreibt, auf dem Redmine gehostet wird, zur Gruppe "gitolite" hinzu

Zuletzt, do chmod -R g+rx $HOME/repositories

Siehe mehr Doku unter Gitolith " rc " Datei .

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X