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
Introduction to Version Control
Search
Frederick Cheung
April 20, 2013
Technology
0
83
Introduction to Version Control
Lightning talk on version control from Rails Girls London.
Frederick Cheung
April 20, 2013
Tweet
Share
More Decks by Frederick Cheung
See All by Frederick Cheung
how_to_ab_test_with_confidence_railsconf.pdf
fcheung
0
62
Fixing Performance and Memory Problems (RubyWine)
fcheung
0
60
Fixing Performance and Memory Problems
fcheung
2
520
Asking questions
fcheung
0
59
Extending Ruby
fcheung
1
480
Other Decks in Technology
See All in Technology
「Verify with Wallet API」を アプリに導入するために
hinakko
1
250
関係性が駆動するアジャイル──GPTに人格を与えたら、対話を通してふりかえりを習慣化できた話
mhlyc
0
130
o11yで育てる、強い内製開発組織
_awache
3
120
Azure Well-Architected Framework入門
tomokusaba
1
320
Adminaで実現するISMS/SOC2運用の効率化 〜 アカウント管理編 〜
shonansurvivors
2
270
後進育成のしくじり〜任せるスキルとリーダーシップの両立〜
matsu0228
7
2.7k
GC25 Recap+: Advancing Go Garbage Collection with Green Tea
logica0419
1
430
生成AIを活用したZennの取り組み事例
ryosukeigarashi
0
210
Trust as Infrastructure
bcantrill
0
350
PLaMoの事後学習を支える技術 / PFN LLMセミナー
pfn
PRO
9
3.9k
Goに育てられ開発者向けセキュリティ事業を立ち上げた僕が今向き合う、AI × セキュリティの最前線 / Go Conference 2025
flatt_security
0
350
Optuna DashboardにおけるPLaMo2連携機能の紹介 / PFN LLM セミナー
pfn
PRO
2
900
Featured
See All Featured
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.1k
GraphQLの誤解/rethinking-graphql
sonatard
73
11k
Fireside Chat
paigeccino
40
3.7k
Six Lessons from altMBA
skipperchong
28
4k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
127
53k
Speed Design
sergeychernyshev
32
1.1k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.6k
The World Runs on Bad Software
bkeepers
PRO
71
11k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.7k
Optimizing for Happiness
mojombo
379
70k
Scaling GitHub
holman
463
140k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
51k
Transcript
Introduction to version control
Managing changes
• Wikipedia page history • google docs revision log •
track changes in Word
None
How does a good VCS help?
Saving our bacon • Store your code securely • Throw
away a change that doesn’t work • Find an older version that works • Find what change caused a problem
Working with others • Allow people to work together without
conflict • Avoid fragmentation of the codebase • Track who changed what, when, why
Experimenting in isolation • You don’t want to release a
half done or experimental feature • Create a copy of your codebase: a branch • When that feature is done, you merge that branch
Top tips
Lingo • You store code in a repository • You
checkout code from a repository • You commit changes back to the repository • When you commit a change you write a commit message explaining your changes
Keep commits small and focussed • Fix 1 bug •
Add 1 feature • Not all the work from 1 day
Commit messages are letters to your future self • Explain
what you are doing, and why you are doing • 1 line summary, plus longer discussion if needed
A bad commit message • Doesn’t tell you why you
made the change. • Doesn’t describe what the change was • Won’t make much sense 6 months from now Twiddle some CSS
A better commit message Fixed homepage rendering bug on firefox
16 Firefox incorrectly calculates padding when nesting a something element in a something else element.
There are many revision control systems • git, mercurial, bazaar,
svn, darcs, perforce etc. • git is the most popular in the rails community
Where to go from here • Install git! • Free
git hosting at github.com • The git book - http://git-scm.com/book • GUIs: Tower, github for mac/windows
Version control is for everyone!