2014-04-01 4 views
6

Ich habe bemerkt, dass, wenn unter Windows init einem nackten Repository die Git-Erweiterungen verwenden, die esMit git in Windows, macht die Option --shared für git-init etwas Sinnvolles?

git init --bare --shared=all 

tut ich das Handbuch für die --shared Optionen gelesen habe. Es scheint eine Annehmlichkeit zu sein, Ordnerberechtigungen zu setzen, aber die Beschreibungen sind sehr UNIX-y (z. B. umask).

Meine Remote-Repositorys sind werden freigegeben, aber sie sind auf einer Remote-UNC-Freigabe unter Windows-Authentifizierung.

Also, in meiner Situation, gibt es keine Notwendigkeit für diese Option --shared, zum Beispiel, wenn ich ein Repo von der Eingabeaufforderung initialisiert wurde?

Antwort

1

Abgesehen von den Berechtigungen (die in der Tat möglicherweise nicht in Windows funktionieren), setzt die Verwendung des --shared Flags auch die receive.denyNonFastForwards Konfiguration in freigegebenen Repositories. Natürlich können Sie das auch manuell einstellen, wenn Sie möchten ...

Versuchen Sie git init --bare --shared=all von einer git-bash Shell auszuführen, und sehen Sie, ob Sie Berichte über Berechtigungen erhalten.

+0

Das von 'git-bash' ausgeführt, habe ich keine Berichte über Berechtigungen. Überprüfen Sie die Konfigurationsdatei, Sie sind korrekt über 'receive.denyNonFastForwards'. Die Eigenschaft 'core.sharedrepository' wird ebenfalls festgelegt. Abgesehen davon werde ich annehmen, dass es keinen wirklichen Sinn hat, Windows zu aktivieren und Ihre als richtige Antwort zu markieren. –

+0

@PeterReavy Nur aus Neugier, (weil ich es nicht auf Windows versucht habe) haben Sie bemerkt und Änderungen in den Berechtigungen des Verzeichnisses nach dem Erstellen der gemeinsamen Repo? –

+0

Ich machte einen Repo von jedem auf meinem lokalen Dateisystem und lief 'cacls' gegen beide und diffed die Ausgabe. Es machte keinen Unterschied zu den Berechtigungen überhaupt. –

Verwandte Themen