Lebenslauf-alt.doc Lebenslauf-ganz-alt.doc Lebenslauf.doc.backup-wolf LebenslaufOkt2006.doc Lebenslauf2006-10.doc Lebenslauf200610.doc Lebenslauf10-2006.doc Lebenslauf10-2006.doc~
Das versionierende Dateisystem Files-11 (alias ODS) stand ab den späten 1960er Jahren auf DEC-Minicomputern der PDP-Baureihe (links) mit dem Betriebssystem RSX-11 und ab 1977 auf der VAX (rechts) mit VAX/VMS, später OpenVMS zur Verfügung.
Hauptmerkmal: lokal
Hauptmerkmal: internetfähig und zentral (client-server)
Hauptmerkmal: dezentral/verteilt (peer to peer)
Merkmale:
GitHub: Projekt-Hosting mit Social Web
git config --global user.name "Max Mustermann" git config --global user.email "Max.Mustermann@uni-bielefeld.de"
~$ mkdir projekt ~$ cd projekt/
~/projekt$ git init Initialized empty Git repository in .git/ ~/projekt$ ls -a . .. .git
~/projekt$ git status # On branch master nothing to commit (working directory clean)
Git erkennt zwar standardmäßig alle Dateien im Projektverzeichnis, versioniert diese aber nicht automatisch
~/projekt$ touch datei.txt
~/projekt$ git status # On branch master # Untracked files: # (use "git add <file>..." to include in what will be committed) # # datei.txt nothing added to commit but untracked files present (use "git add" to track)
Mit git add kann man Git anweisen, Dateien zu "tracken", d.h. auf Änderungen hin zu überwachen
~/projekt$ git add datei.txt
~/projekt$ git status # On branch master # Changes to be committed: # (use "git reset HEAD <file>..." to unstage) # # new file: datei.txt #
~/projekt$ git commit
~/projekt$ git commit -m "Added file datei.txt"
Enthält aktuelle Version des Projekts
Zwischenbereich zwischen Arbeitsverzeichnis und Repository; enthält Änderungen für den nächsten Commit
Datenbank, welche die Versionshistorie (Commits) enthält (.git-Verzeichnis)
git add module.py git add documentation.txt git commit -m "Created module + documented it"
git log commit 70164885d0ef60ed5201ca6881613d0cc706e4fc Author: Max Mustermann <Max.Mustermann@uni-bielefeld.de> Date: Wed May 2 15:50:53 2012 +0200 Changed page title commit 23216a54cf49ef7f47cbeff8ad645545f2abc377 Author: Max Mustermann <Max.Mustermann@uni-bielefeld.de> Date: Wed May 2 15:48:46 2012 +0200 Added another bullet point
git branch test
git checkout test
git checkout -b test
git branch * master test
git branch -d test
git merge test
Updating 8cfeb67..57b272d Fast-forward app.py | 1 + 1 file changed, 1 insertion(+)
git merge test Auto-merging documentation.txt CONFLICT (content): Merge conflict in documentation.txt Automatic merge failed; fix conflicts and then commit the result.
<<<<<< HEAD Die erste Zeile auf master. ======= Die erste Zeile auf test. >>>>>>> test
user@myserver:/opt/git$ mkdir myrepo.git user@myserver:/opt/git$ cd myrepo.git user@myserver:/opt/git/myrepo.git$ git init --bare
git remote add myserver ssh://user@myserver/opt/git/myrepo.git
git remote -v myserver ssh://user@myserver/opt/git/myrepo.git (fetch) myserver ssh://user@myserver/opt/git/myrepo.git (push)
git clone ssh://user@myserver/opt/git/myrepo.git
git remote -v origin ssh://user@myserver/opt/git/myrepo.git (fetch) origin ssh://user@myserver/opt/git/myrepo.git (push)
git push origin master git push origin test
git fetch origin master
git pull origin master
git clone https://github.com/LibreCat/Catmandu.git
Bücher:
Lösungen für Einzelprobleme
asciidoc --attribute=data-uri --backend=slidy versionieren_mit_git.txt
Space or Right Arrow to move to next slide, click help below for more details