On Github beelbrecht / git-einfuehrung
foobar/ <- lokales Projektverzeichnis |- .git/ <- lokales Repository |- index.html <- Arbeitskopie |- style.css |- readme.txt
Die Versionshistorie liegt im "versteckten" .git-Verzeichnis
Repository erstellen:
$ git init
Änderungen dem Index hinzufügen:
$ git add style.css
Alles aus dem Index commiten:
$ git commit -m 'initial commit'
ggf. Push & Pull:
$ git push $ git pull
Git CheatSheet mit Veranschaulichung...
Erstellen von neuen "Zweigen" (branchen):
$ git branch foobar $ git checkout foobar
Alternativ:
$ git checkout -b foobar
Zwei Zweige verschmelzen (mergen):
$ git merge foobar
ACHTUNG: der angegebene Branch wird in den aktuellen "hineingezogen".
Konflikt bei Datei foobar.txt:
Test eines Mergekonfliktes... <<<<<<< HEAD Bearbeitung durch Branch 1 ======= Bearbeitung durch Branch 2 >>>>>>> 'zu mergender Branch'
Manuelle Bearbeitung nötig! Anschließend folgendes mit aussagekräftiger commit-Message:
$ git add foobar.txt $ git commit
Bestimmte Dateien sollen nicht mit versioniert werden!
Client-bezogen:lokale Git Konfiguration
Projekt-bezogen:.git/info/exclude (nur lokal).gitignore Datei (diese mit comitten)
Einzelne Commits rückgängig machen:
$ git revert 3329661
Zweigspitze mit 'git reset' verschieben. 'git reset' verschiebt den HEAD auf bestimmte Commits
Varianten:
$ git reset --soft HEAD^^ $ git reset --mixed HEAD~4 $ git reset --hard 1.0.1
Bestimmte Commits auschecken
$ git checkout 2.0.0
Ein Remote Repository enthält keinen Working Tree
Remote (Bare) Repository erstellen:
$ mkdir foobar.git $ cd foobar.git $ git init --bare
Unterstützung mehrerer Protokolle
Nutzung von "Remote Tracking Branches"
$ git remote -a * master remotes/origin/master remotes/origin/develop
Wichtige Befehle für remote Repositories:
$ git remote
$ git clone
$ git pull
$ git fetch
$ git push
...und viel Spaß mit Git :-)