Benutzer-Werkzeuge

Webseiten-Werkzeuge


playground:git_fuer_philosophen

= Git für Philosophen == Kurzer geschichtlicher Abriß

über Versionsverwaltung allgemein. Die (unvollständige) Entwicklung ohne kommerzielle Lösungen:

* SCCS (Source Code Control System, 1972) im Unix Umfeld (Bell Labs) * RCS (Revision Control System, 1982), diff-Sammlung parallel zu jeder Datei, * CVS (Concurrent Versions System, 1989), Netzwerk-Erweiterung von RCS (diff Sammlungen auf einem zentralen Server), * SVN (Subversion, 2000) - „CVS ohne dessen Fehler“, * Git 2005 - Neuentwicklung zur Verwaltung der Linux-Kernel Quellen, kein zentraler Server nötig * Mercurial 2005 - „git“ für CVS/SVN Umsteiger, auch kein zentraler Server nötig

== Konzepte * Lock-Modify-Write pfui, * Copy-Modify-Merge

== Topologien

* lokal, im Dateisystem eingestreut (SCCS, RCS), * zentrales Repository (CVS, SVN), * verteilte, gleichberechtigte Repositories (git, mercurial) == Terminologie http://de.wikipedia.org/wiki/Verteiltes_Versionskontrollsystem

* Repository (Repo): Archiv mit kompletter Änderungsgeschichte (was, wann, wer, wieso) * checkout: erstmalig Dateien aus dem Repository holen bzw. wiederholt auffrischen, * update: Dateien mit aktuellen Stand aus dem Repository auffrischen, * commit: Änderung(en) in's Repository schreiben, * changeset: Zusammengehörige Änderungen an mehreren Dateien in einem Commit * branch: „Zweig“ - von der Hauptentwicklung abzweigende aufeinanderfolgende Änderungen * trunk: Hauptzweig (git nennt das: 'master')

== Git Benutzung * Installation * commit GUI * Bash Completion

git… * …init - lokal neues Repo anlegen * …add status diff commit reset (dafür ist GitX sehr gut) * …checkout branch merge (Branch anlegen, wechseln, löschen) * …clone - Repo kopieren, * …fetch pull push - Sync mit anderen Repos

== Hosting * extrem flexibel * Open Source gerne bei http://github.com - ich auch: http://github.com/mro == Links * http://git-scm.com/ - Homepage * http://gitref.org/ - sehr gute Doku * http://www.kernel.org/pub/software/scm/git/docs/ - Manpages * http://www.kernel.org/pub/software/scm/git/docs/user-manual.html - Original Manual * SCCS Paper im IEEE 1975 * RCS Paper im IEEE 1982

playground/git_fuer_philosophen.txt · Zuletzt geändert: 2010/11/12 10:39 von mro