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
130
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
Zendeskのチケットを Amazon Bedrockで 解析した
ryokosuge
3
300
ユーザーも開発者も悩ませない TV アプリ開発 ~Compose の内部実装から学ぶフォーカス制御~
taked137
0
160
The Past, Present, and Future of Enterprise Java with ASF in the Middle
ivargrimstad
0
100
Laravel Boost 超入門
fire_arlo
3
210
GitHubとGitLabとAWS CodePipelineでCI/CDを組み比べてみた
satoshi256kbyte
4
220
パッケージ設計の黒魔術/Kyoto.go#63
lufia
3
430
AIと私たちの学習の変化を考える - Claude Codeの学習モードを例に
azukiazusa1
10
4k
OSS開発者という働き方
andpad
5
1.7k
print("Hello, World")
eddie
2
530
ぬるぬる動かせ! Riveでアニメーション実装🐾
kno3a87
1
210
概念モデル→論理モデルで気をつけていること
sunnyone
1
100
機能追加とリーダー業務の類似性
rinchoku
2
1.3k
Featured
See All Featured
It's Worth the Effort
3n
187
28k
A designer walks into a library…
pauljervisheath
207
24k
How GitHub (no longer) Works
holman
315
140k
Faster Mobile Websites
deanohume
309
31k
Art, The Web, and Tiny UX
lynnandtonic
303
21k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.7k
4 Signs Your Business is Dying
shpigford
184
22k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
51
5.6k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
Become a Pro
speakerdeck
PRO
29
5.5k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.4k
Facilitating Awesome Meetings
lara
55
6.5k
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