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
Why on earth is git super awesome?
Search
Christopher Brown
September 28, 2011
Programming
4
240
Why on earth is git super awesome?
Christopher Brown
September 28, 2011
Tweet
Share
More Decks by Christopher Brown
See All by Christopher Brown
Crucible
xoebus
0
250
Concourse
xoebus
0
120
Final Project Presentation - Database Filesystem
xoebus
2
280
Accessing Databases by using a Filesystem
xoebus
2
120
Database Visualisation
xoebus
2
130
Other Decks in Programming
See All in Programming
Honoのおもしろいミドルウェアをみてみよう
yusukebe
1
200
昭和の職場からアジャイルの世界へ
kumagoro95
1
360
Honoとフロントエンドの 型安全性について
yodaka
5
330
『GO』アプリ バックエンドサーバのコスト削減
mot_techtalk
0
140
[Fin-JAWS 第38回 ~re:Invent 2024 金融re:Cap~]FaultInjectionServiceアップデート@pre:Invent2024
shintaro_fukatsu
0
410
SwiftUI Viewの責務分離
elmetal
PRO
1
220
バックエンドのためのアプリ内課金入門 (サブスク編)
qnighy
8
1.8k
チームリードになって変わったこと
isaka1022
0
190
Rails アプリ地図考 Flush Cut
makicamel
1
110
2024年のkintone API振り返りと2025年 / kintone API look back in 2024
tasshi
0
220
Amazon Q Developer Proで効率化するAPI開発入門
seike460
PRO
0
110
一休.com のログイン体験を支える技術 〜Web Components x Vue.js 活用事例と最適化について〜
atsumim
0
320
Featured
See All Featured
It's Worth the Effort
3n
184
28k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.6k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
31
2.1k
Practical Orchestrator
shlominoach
186
10k
What's in a price? How to price your products and services
michaelherold
244
12k
Scaling GitHub
holman
459
140k
RailsConf 2023
tenderlove
29
1k
Fireside Chat
paigeccino
34
3.2k
Making the Leap to Tech Lead
cromwellryan
133
9.1k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Transcript
? WHY ON EARTH IS GIT SUPER AWESOME
git *
...is distributed. git *
?
Centralised
None
Slow Network Required Poor Branching Restrictive
Distributed
None
Fast No Network Needed Any Workflow Safer
Developer Developer Developer Integration Manager Blessed Repository
git *
...is easy. git *
Core (Plumbing) UI (Porcelain)
$ cd my-project $ git init Initialized empty Git repository
in /Users/cb/my-project/.git/ $ git add . $ git commit -m “initial commit”
$ cd my-project $ git init Initialized empty Git repository
in /Users/cb/my-project/.git/ $ git add . $ git commit -m “initial commit”
$ cd my-project $ git init Initialized empty Git repository
in /Users/cb/my-project/.git/ $ git add . $ git commit -m “initial commit”
$ cd my-project $ git init Initialized empty Git repository
in /Users/cb/my-project/.git/ $ git add . $ git commit -m “initial commit”
$ cd my-project $ git init Initialized empty Git repository
in /Users/cb/my-project/.git/ $ git add . $ git commit -m “initial commit”
$ vim ... $ git commit -am “changed some widgets”
$ vim ... $ git commit -am “changed some widgets”
Done.
git merge git blame git status git log git checkout
git branch git clone git rebase git config git revert git tag git reset git bisect git pull git fetch git stash git add
git merge git blame git status git log git checkout
git branch git clone git rebase git config git revert git tag git reset git bisect git pull git fetch git stash git add
git *
...is fast. git *
...and stupid.
stupid = simple
simple = fast
Commit Tree Blob Tag
Commit
Commit Tree Tree Blob Blob Blob
Commit Commit
Commit Commit Commit
Commit Commit Commit Commit Commit
Commit Commit Commit Commit Commit Commit
Commit Tag
git *
...is friendly. git *
None
Pull Requests Issues Wikis Community
git *
...is reliable. git *
Industry Usage
Industry Support Linux Kernel Google Eclipse Android
IDE Support
git *
...is branch-able. git *
$ git branch quick-test
$ git merge quick-test
$ git branch -d quick-test
git *
...is efficient. git *
Cheap Local Branching
zlib Compression
Only Send Changes
git *
...is free. git *
None
git *
...is not perfect! git *
No Partial Checkouts
Limited Binary Support
* git
...is awesome. git *
Fin.
Fin. Questions? @xoebus
[email protected]
xoebus
Fin. http://git-scm.com @xoebus
[email protected]
xoebus