git / svn
DESCRIPTION
GIT bietet* Gesamte Versionshistorie* Schneller / Weniger Speicherplatz* Nette bunte Tools* Offline Commits* Leichteres Branchen/MergenTRANSCRIPT
Referenten: Uwe Stühler & Torben Brodt Datum: 18.11.2008 Veranstalter: plista.com GmbH
>> GIT / SVN
GIT / SVN: Inhalt
1. Vorteile von GIT
2. Demo
3. Frontends
4. Fragen
Vorteile von GIT
Volle Historie Offline (Logs / Diffs)
Offline Commits
Lokale Branches
Viele nützliche git Tools ”in Farbe :)”
Trotzdem weniger Speicherplatz als ”checkout”
1/4
Demo
Aller Anfang..
git svn clone https://svn2.host....YouFilter.PHP.Portal
Wundert euch nicht, dass das erste Klonen des SVN Repositories etwas länger dauert.
Um so mehr freuen wir uns, wenn wir die Dateigrößen betrachten. Vergleichen wir ein Projekt mit 2800 Revision. SVN Checkout meldet 45 MB - bei Git sind es nur 18 ;)
2/4
Demo
Timeline (siehe Hashes)
git log Jeder Benutzer besitzt eine lokale Kopie der gesamten
Projektgeschichte. Es ist kein zentraler Server notwendig. Mit SVN kann man lediglich die letzte Revision einer Datei wiederherstellen.
Weil Git außerdem mit Kompression arbeitet macht die Dateigröße einer kompletten Historie oft nur einen Bruchteil der Größe eines SVN Checkouts aus.
2/4
Demo
Changeset betrachten
git show 345afh5
2/4
Demo
Neue Datei hinzufügen
git add Mit Git fügt man jede Datei die commitet werden soll
mit add hinzu.
2/4
Demo
Lokalen Commit durchführen
git commit -a Um alle versionierten Dateien automatisch zu
commiten setzt man den Parameter -a
2/4
Demo
Alle lokalen Commits an SVN senden
git svn dcommit
2/4
Demo
Updates vom SVN Server laden
git svn fetch
2/4
Demo
Weitere Befehle
git --help git status git grep 'getInstance()' git branch git checkout
2/4
Demo
Nützliche Konfiguration
git config --global color.diff auto git config --global color.status auto git config --global color.branch auto
Alias für svn update / git update
git config --global alias.update 'svn fetch'
2/4
Frontends
Commandline ;)
git-cvsserver (kommt mit git)
egit (eclipse): http://git.or.cz/gitwiki/EclipsePlugin
"Some tests have been performed using both Cygwin and MSYS git. Both have issues that we need both feedback and patches for."
Windows Explorer Integration / Git Cheetah, http://repo.or.cz/w/git-cheetah.git/
"do not expect anything to work"
3/4
Fragen 4/4
Literatur 4/4
Informationen zu Git und Git-Svn
http://git.or.cz/course/svn.html http://linux.yyz.us/git-howto.html