Ich möchte ein Git-Projekt (von Github, sagen) klonen, und die oberste Ebene Verzeichnis für Gruppe beschreibbar sein.'Git Clone' respektiert Umask, außer für Top-Level-Projekt-Verzeichnis
Ich habe ein paar verschiedene Dinge ausprobiert. Zuerst muss nur die Umask vor dem Klonen gesetzt werden.
$ umask
0002
Dateien, die ich erstellen sind dann beschreibbar Gruppe
$ touch test
$ ls -l test
-rw-rw-r-- 1 user group 0 2012-05-17 09:32 test
Jetzt versuche ich git clone
$ git clone [email protected]:user/repo.git
Cloning into repo... [succeeds]
Aber das Klon-Verzeichnis von Gruppe nicht beschreibbar.
$ ls -ld repo
drwxr-xr-x 11 user group 4096 2012-05-17 09:32 repo
habe ich versucht, das Gleiche mit einem Repo erstellt mit git init --shared=umask
(die bereits dem Standard sein soll) in einem Verzeichnis mit 775 Berechtigungen. Nach dem Drücken auf Github git clone
erhält die gleichen Ergebnisse.
Das ist keine große Sache, ich kann chmod in meine Checkout-Skripte. Aber wenn es einen richtigen/eingebauten Weg gibt, ist das vorzuziehen. Git ist Version 1.7.4.1 auf Ubuntu 11.04.
Alle Ideen oder Links sind willkommen. Ich sah this post, but it uses chmod, ich konnte nicht viel anderes dazu finden. Vielen Dank!
Hey @ fork0, danke für die Antwort. Mein .git-Verzeichnis und alle Projektdateien sind bereits gruppierbar, dank meiner umask. Um zu verdeutlichen, versuche ich, dass das oberste Verzeichnis des Projekts eine Gruppe schreibbar ist (dh "ls -ld repo" würde "drwxrwxr-x" anzeigen). Das Festlegen von 'core.sharedRepository = group' macht dasselbe wie' git init --shared = group' hinter den Kulissen und macht das oberste Verzeichnis nicht für Gruppen schreibbar. –
Ich verstehe. Nein, tut es nicht – fork0
Also ja, tut es nicht. Ich glaube nicht, dass Git etwas dafür hat, aber lassen Sie mich überprüfen ... – fork0