Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Sei kein Blödmann und nimm Git!
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Stefan Imhoff
September 27, 2011
Education
200
3
Share
Sei kein Blödmann und nimm Git!
Intro to Git (in German).
Stefan Imhoff
September 27, 2011
Other Decks in Education
See All in Education
タイムマシンのつくりかた
nomizone
4
1.3k
Multimodal Interaction - Lecture 3 - Next Generation User Interfaces (4018166FNR)
signer
PRO
0
2.1k
応募課題(’25広島)
forget1900
0
990
View Manipulation and Reduction - Lecture 9 - Information Visualisation (4019538FNR)
signer
PRO
1
2.6k
Fulbright DAI 2025 學人經驗分享
joannie
0
740
Google AI Studio 開発者向け完全ガイド プロトタイピ まで ングからReactアプリ 構築・マルチモーダル活用
mickey_kubo
1
130
Lenguajes de Programacion (Ingresantes UNI 2026)
robintux
0
160
2026年度春学期 統計学 講義の進め方と成績評価について (2026. 4. 9)
akiraasano
PRO
0
130
演習:Gitの応用操作 / 05-git-advanced
kaityo256
PRO
0
270
「機械学習と因果推論」入門① 因果効果とは
masakat0
0
930
リモートリポジトリの操作 / 02-c-remote
kaityo256
PRO
0
150
共感から、つくる: 変わり続ける自分と、誰かのための創造
micknerd
1
310
Featured
See All Featured
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
250
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
370
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.6k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
810
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
520
Agile that works and the tools we love
rasmusluckow
331
21k
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
490
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
260
Believing is Seeing
oripsolob
1
110
The Curse of the Amulet
leimatthew05
1
11k
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
2k
Skip the Path - Find Your Career Trail
mkilby
1
110
Transcript
Sei (k)ein Blödmann und nimm Git! Einführung in Versionskontrolle mit
Git Stefan Imhoff http://stefanimhoff.de 04.08.2009
Git /gɪt/ Nomen (Britisch, Slang) 1. Blödmann, Depp, Idiot
»Ich bin ein egoistischer Bastard und benenne alle meine Projekte
nach mir selbst. Zuerst Linux, jetzt Git.« – Linus Torvalds
Fakten & Statistiken Warum Git die Mitbewerber abhängt
Git Mercurial Bazaar 0,60 0,059 0,024 Init (Sekunden) Quelle: Scott
Chacon, whygitisbetterthanx.com
Git Mercurial Bazaar 2,381 0,368 8,535 Add (Sekunden) Quelle: Scott
Chacon, whygitisbetterthanx.com
Git Mercurial Bazaar 14,744 1,946 0,451 Status (Sekunden) Quelle: Scott
Chacon, whygitisbetterthanx.com
Git Mercurial Bazaar 14,248 2,189 0,543 Diff (Sekunden) Quelle: Scott
Chacon, whygitisbetterthanx.com
Git Mercurial Bazaar 1,892 1,201 0,056 Tag (Sekunden) Quelle: Scott
Chacon, whygitisbetterthanx.com
Git Mercurial Bazaar 9,055 2,65 0,711 Log (Sekunden) Quelle: Scott
Chacon, whygitisbetterthanx.com
Git Mercurial Bazaar 23,002 12,5 12,48 Commit, groß (Sekunden) Quelle:
Scott Chacon, whygitisbetterthanx.com
Git Mercurial Bazaar 1,139 0,517 0,086 Commit, klein (Sekunden) Quelle:
Scott Chacon, whygitisbetterthanx.com
Git Mercurial Bazaar 82,249 94,681 1,161 Branch, kalt (Sekunden) Quelle:
Scott Chacon, whygitisbetterthanx.com
Git Mercurial Bazaar 39,411 12,3 0,07 Branch, heiß (Sekunden) Quelle:
Scott Chacon, whygitisbetterthanx.com
Git Mercurial Bazaar Subversion 61 64 53 43 45 34
24 Repository (MB) Gesamtes Verzeichnis (MB) Quelle: Scott Chacon, whygitisbetterthanx.com
Git Mercurial Bazaar Subversion 64 311 144 119 Clone (Sekunden)
Quelle: Scott Chacon, whygitisbetterthanx.com
Theorie & Grundlagen Wer das versteht, ist klar im Vorteil
…
.git
None
SHA-I
Hallo, Welt!
8095a184a9b9ae8a14a0f0cde697c7f7cf1410e6
Meta-Informationen (Datum, Name, Ort)
Meta-Informationen (Datum, Name, Ort)
Meta-Informationen (Datum, Name, Ort)
Warum? • Konsistente Inhalte • Gleicher Inhalt = gleicher Blob
Objekte
• blobs • trees • commits • tags
Blobs
Dateiinhalte
Trees
• blobs • trees
Commits
• tree • parent • author • commiter • message
• datetime
Tags
• object • type • tagger • message
Konfiguration Sag mir wie du heißt, Baby!
git config
git config --global user.name "Stefan Imhoff" git config --global user.email
"
[email protected]
"
None
.gitignore
None
Tägliche Arbeit Business, not as usual
git clone
None
git init
None
git status
None
Working Directory Local
git add
None
Working Directory Staging Area Local
Working Directory Staging Area Local
Working Directory Staging Area git add Local
None
git commit
None
Working Directory Staging Area Local Repository git add Local
Working Directory Staging Area Local Repository git add Local
Working Directory Staging Area Local Repository git add git commit
Local
master
git log
None
None
git rm
None
None
git diff
None
git branch
None
None
None
master neuerzweig
git checkout
None
None
None
Working Directory Staging Area Local Repository git add git commit
Local
Working Directory Staging Area Local Repository git add git commit
Local
Working Directory Staging Area Local Repository git add git commit
git checkout Local
git merge
None
Working Directory Staging Area Local Repository git add git commit
git checkout Local
Working Directory Staging Area Local Repository git add git commit
git checkout Local
Working Directory Staging Area Local Repository git add git commit
git checkout git merge Local
master neuerzweig
None
git tag
None
Probleme & Wartung Keine Panik auf der Titanic
git commit --amend
None
None
git checkout
None
git reset
None
git blame
None
git revert
None
git mergetool
None
None
git bisect
None
Bad Good ?
Bad Good Good ?
Bad Good Good Bad ?
git gc
None
Remote E.T. nach Hause telefonieren
Lokales Repository veröffentlichen
None
None
None
None
git remote
None
None
git fetch
None
None
Working Directory Staging Area Local Repository Remote Repository git add
git commit git checkout git merge Local Remote
Working Directory Staging Area Local Repository Remote Repository git add
git commit git checkout git merge Local Remote
Working Directory Staging Area Local Repository Remote Repository git add
git commit git fetch git checkout git merge Local Remote
git pull
None
Working Directory Staging Area Local Repository Remote Repository git add
git commit git checkout Local Remote
Working Directory Staging Area Local Repository Remote Repository git add
git commit git checkout Local Remote
Working Directory Staging Area Local Repository Remote Repository git add
git commit git fetch git checkout Local Remote
Working Directory Staging Area Local Repository Remote Repository git add
git commit git fetch git checkout Local Remote
Working Directory Staging Area Local Repository Remote Repository git add
git commit git fetch git checkout git merge Local Remote
git push
None
Working Directory Staging Area Local Repository Remote Repository git add
git commit git checkout git merge Local Remote git fetch
Working Directory Staging Area Local Repository Remote Repository git add
git commit git checkout git merge Local Remote git fetch
Working Directory Staging Area Local Repository Remote Repository git add
git commit git push git checkout git merge Local Remote git fetch
git submodules
None
None
None
Profi-Techiken Der Wuxi-Fingergriff von Git
Leere Branches anlegen
None
History verändern
None
git svn
None
git svn rebase git svn dcommit
git instaweb
None
None
git stash
None
None
None
Klicki-Bunti Aber gibt’s dat auch für Maus?
Git Gui
None
None
None
Git Extensions
None
None
TortoiseGit
None
None
None
None
None
None
GitK
None
GitX
None
None
Und los geht’s … Bereit Versionsgeschichte zu schreiben?
Vielen Dank!
Eingesetzte Fotos Die in dieser Präsentation eingesetzten Fotos stammen von
iStockphoto. 8916384 7941768 3391085 1945196 5823044 2699704 7952299 3142537 7420635 7692057 4144887
Eingesetzte Schriften Delicious http://www.josbuivenga.demon.nl/delicious.html Baskerville (&)
Fragen & Antworten