Nachdem ich jedes mal wieder anfange die Dokumentation zu lesen hier mal der Ablauf meines Standard-Verfahrens, ein neues git-repository auf einem Server mit ssh-Zugang einzurichten.
1. Initialisierung des leeren Repositories auf dem Server
Anstatt erst ein sog. bare-Repository auf meinem Rechner zu erstellen, das auf den Server zu kopieren und dann lokal zu löschen, erzeuge ich das leere Repository gleich auf dem Server (erfordert natürlich einen Shell-Zugang zum Server).
thomas@gitserver:/home/git$ mkdir <projectname>
thomas@gitserver:/home/git$ cd <projectname>/
thomas@gitserver:/home/git/<projectname>$ git --bare init --shared
Initialized empty shared Git repository in /home/git/<projectname>/
Die zwingende Reihenfolge der Optionen beim git init kann ich mir immer noch nicht merken….
2. Verbinden des lokalen git-Repositories mit dem Server:
Natürlich muss das lokale Repository vorher mit git init angelegt worden sein.
thomas@local$ git remote add origin thomas@gitserver:/home/git/<projectname>
Damit sind das lokale und das Remote-Rspository miteinander verknüpft.
3. (Erstes) Hochladen der Inhalte
Die bisher lokal (im branch master) erzeugten Inhalte werden nun zum Server übertragen.
thomas@local:/home/thomas/<projectname>$ git push origin master
Counting objects: 67, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (56/56), done.
Writing objects: 100% (67/67), 79.96 KiB, done.
Total 67 (delta 10), reused 0 (delta 0)
To thomas@gitserver:/home/git/<projectname>
* [new branch] master -> master
4. Den “master”-Branch mit dem Server verbinden
Damit der pull nicht meckert kommt ans Ende der Datei .git/config noch:
[branch "master"]
remote = origin
merge = refs/heads/master
Fertig!
git, howto