====== Git ======
Git ist ein verteiltes Versionsverwaltungssystem, welches entwickelt wurde um
alles von sehr kleinen bis zu sehr grossen Projekten schell und effizient zu
verwalten.
* [[http://git-scm.com/ | git main]]
* [[http://git-scm.com/book/en/ | Pro Git Book Online (en) ]]
* [[http://git-scm.com/book/de/ | Pro Git Book Online (de) ]]
* [[https://code.google.com/p/tortoisegit/ | TortoiseGit ]]
* [[http://nvie.com/posts/a-successful-git-branching-model/ | gitflow]]
* [[https://www.atlassian.com/git/tutorial | Tutorial ]]
* {{:software:git:git-presentation.pdf| Allgemeine Präsentation }}
* {{git-demo-basics.pdf| Demo Basics (Terminal) }}
* {{git-demo-basics-tgit.pdf| Demo Basics (TortoiseGit) }}
* {{git-demo-remotes.pdf| Demo Remotes (Terminal) }}
* {{git-demo-remotes-tgit.pdf| Demo Remotes (TortoiseGit) }}
* {{.:git-cheat-sheet_wall-skills1.pdf | Cheat sheet}}
===== Kurzübersicht =====
{{:software:git:kurzuebersicht.pdf|Die wichtigsten Konzepte und Befehle auf einen Blick}}
===== Linux =====
Unter Debian kann Git mit folgendem Befehl installiert werden:
$ sudo apt-get install git
Um kompliziertere Git-Histories anzuzeigen empfielt sich ein GUI Tool, welches
mit folgendem Befehl installiert werden kann:
$ sudo apt-get install gitg
Weitere GUI Clients können [[http://git-scm.com/downloads/guis | hier]] gefunden werden.
===== Windows =====
Unter Windows kann Git auf [[http://git-scm.com/ | dieser ]] Seite heruntergeladen werden.
TortoiseGit ist ein GUI Client, der sehr ähnlich ist wie TortoiseSVN, und [[https://code.google.com/p/tortoisegit/ | hier ]] heruntergeladen
werden kann.
===== Eclipse =====
Das Plugin [[https://www.eclipse.org/egit/ | EGit ]] ist standardmässig bei Eclipse installiert und kann auf Linux und Windows Version verwendet werden.
===== Git Konfiguration =====
Die globale Konfiguration von Git wird im File ~/.gitconfig gespeichert. Ein Beispiel dieses Files findet man [[gitconfig|hier]].
===== Commit Guidelines =====
Eine saubere und nachvollziehbare Git History trägt wesentlich zur Qualität einer Software bei. Deshalb ist es für ein Softwareprojekt sinnvoll, Commit Richtlinien zu definieren und einzuhalten. Eine gute Vorlage sind die [[https://wiki.eeros.org/for_developers/commit_guidelines | Commit Guidelines des EEROS Frameworks]].