Git im CS-Netz: Unterschied zwischen den Versionen
Stefan (Diskussion | Beiträge) (→Remote Repository erstellen: Link zur Diskussionsseite mit Anleitung fuer Permissions etc.) |
Phil (Diskussion | Beiträge) (fuer nach "git" Suchende) |
||
Zeile 1: | Zeile 1: | ||
Dieser Artikel beschreibt wie man die Versionskontrolle namens '''Git''' im cs-Netz einrichtet und für weitere User bereitstellt. Es werden ''grundlegende Unix-Kenntnisse'' vorausgesetzt. | Dieser Artikel beschreibt wie man die Versionskontrolle namens '''Git''' im cs-Netz einrichtet und für weitere User bereitstellt. Es werden ''grundlegende Unix-Kenntnisse'' vorausgesetzt. | ||
+ | |||
+ | == TechTalk: Git Workshop == | ||
+ | Meintest du den [[TechTalks|TechTalk: Git Workshop]]? Am 25.11.2011 und 2.12.2011 findet der Git Workshop statt. | ||
== Git Software einbinden == | == Git Software einbinden == |
Version vom 22. November 2011, 23:12 Uhr
Dieser Artikel beschreibt wie man die Versionskontrolle namens Git im cs-Netz einrichtet und für weitere User bereitstellt. Es werden grundlegende Unix-Kenntnisse vorausgesetzt.
Inhaltsverzeichnis
TechTalk: Git Workshop
Meintest du den TechTalk: Git Workshop? Am 25.11.2011 und 2.12.2011 findet der Git Workshop statt.
Git Software einbinden
Git ist auf den cs-Rechnern in /opt/csw/bin verfügbar und erfordert die Anpassung der PATH Variablen (z.B. PATH="/opt/csw/bin":$PATH ) Falls dies nicht mehr der Fall sein sollte, kann Git in das Home-Verzeichnis installiert werden.
Remote Repository erstellen
Um ein Remote Repository names foo im Home-Verzeichnis auf einem cs-Rechner zu erstellen, wird ein Git-Verzeichnis (Konvention: Suffix git) erstellt und initialisiert:
mkdir foo.git && cd foo.git git init --bare
Anschließend können eine Gruppe erstellt, die Benutzerrechte angepasst und andere User in die Gruppe eingeladen werden. (genauere Anleitung auf Diskussionsseite).
Administrator: Erste Schritte
Der folgende Abschnitt wird auf dem Rechner des Administrators ausgeführt. Das gerade erstellte Git Repository kann nun mit Inhalt gefüllt werden. User und remotehost müssen durch den cs-usernamen bzw. einen cs-Rechner ersetzt werden.
mkdir foo && cd foo git init ... git add . git commit -a -m "Initial commit" git push ssh://user@remotehost/home/user/foo.git master
Somit ist das remote Repository eingerichtet und der aktuelle Branch ist master (head).
User
Erste Schritte
Als erstes wird eine Kopie des Repositorys erstellt:
git clone ssh://user@remotehost/home/user/foo.git
Anschließend kann man die Konfigurations-Datei .git/config ändern, um kürzere Befehle benutzen zu können. Die Datei sollte so aussehen:
[core] repositoryformatversion = 0 filemode = true bare = false logallrefupdates = true [remote "origin"] url = ssh://user@remotehost/home/user/foo.git fetch = +refs/heads/*:refs/remotes/origin/* [branch "master"] remote = origin merge = refs/heads/master [user] name = user email = user@example.com
Arbeiten mit dem Git-Repo
Holt die Änderungen des Remote Repositorys:
git pull
Sendet die Veränderungen an das Remote Repository:
git push
Zeigt den Commit-Log an
git log
Zeigt noch nicht gespeicherte Änderungen an:
git diff
Links
alternativ: Subversion im CS-Netz