Damian Brunold

Shared git repositories

2011-03-07 21:23 Linux

Nachdem ich in der Imagic nun eine Serie von produktiven git repositories habe, wollte ich sicherstellen, dass nicht nur ich pushen kann. Dazu muss das Repository mit --shared erstellt werden. Leider sind meine Repositories schon erstellt. Man kann zwar nochmals git init --bare --shared aufrufen, aber das scheint nicht zu genügen. Man muss insgesamt folgende Kommandos im repository ausführen:

git init --bare --shared
find . -type d | xargs chmod g+wsx 
chown -R dab:git *

Danach habe ich noch ein paar Dateien, die für den owner, also dab, schreibbar waren, aber nicht für die Gruppe, auch für die Gruppe schreibbar gemacht. Damit sollte das OK sein.

Besser ist es von Beginn weg wie folgt vorzugehen. Auf dem Server erstellt man ein leeres Repository mit:

git init --bare --shared

Das klont man auf den Arbeitscomputer. Dabei gibt es eine Warnung von wegen leerem Repository. Stimmt, ist noch leer, also ignorieren.

Wenn man dann die Daten ins lokale Repository committet hat, kann man sie pushen. Das erste mal braucht es dazu:

git push origin master

Es gibt dann eine Meldung von wegen branch "master" sei erstellt worden.

Ab dann genügt dann das klassische git push ohne Argumente.