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
75
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
53
Fixing Performance and Memory Problems (RubyWine)
fcheung
0
52
Fixing Performance and Memory Problems
fcheung
2
500
Asking questions
fcheung
0
50
Extending Ruby
fcheung
1
450
Other Decks in Technology
See All in Technology
MLflowはどのようにLLMOpsの課題を解決するのか
taka_aki
0
140
【内製開発Summit 2025】イオンスマートテクノロジーの内製化組織の作り方/In-house-development-summit-AST
aeonpeople
2
1.1k
マルチアカウント環境における組織ポリシーについて まとめてみる
nrinetcom
PRO
2
110
【Forkwell】「正しく」失敗できるチームを作る──現場のリーダーのための恐怖と不安を乗り越える技術 - FL#83 / A team that can fail correctly by forkwell
i35_267
2
120
Cracking the Coding Interview 6th Edition
gdplabs
14
28k
QAエンジニアが スクラムマスターをすると いいなぁと思った話
____rina____
0
160
開発者体験を定量的に把握する手法と活用事例
ham0215
0
140
DevinでAI AWSエンジニア製造計画 序章 〜CDKを添えて〜/devin-load-to-aws-engineer
tomoki10
0
220
Aurora PostgreSQLがCloudWatch Logsに 出力するログの課金を削減してみる #jawsdays2025
non97
1
250
RayでPHPのデバッグをちょっと快適にする
muno92
PRO
0
200
ABWG2024採択者が語るエンジニアとしての自分自身の見つけ方〜発信して、つながって、世界を広げていく〜
maimyyym
1
230
Qiita Organizationを導入したら、アウトプッターが爆増して会社がちょっと有名になった件
minorun365
PRO
1
350
Featured
See All Featured
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
227
22k
How to Think Like a Performance Engineer
csswizardry
22
1.4k
The World Runs on Bad Software
bkeepers
PRO
67
11k
Embracing the Ebb and Flow
colly
84
4.6k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
11
540
Intergalactic Javascript Robots from Outer Space
tanoku
270
27k
Art, The Web, and Tiny UX
lynnandtonic
298
20k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
Docker and Python
trallard
44
3.3k
Testing 201, or: Great Expectations
jmmastey
42
7.2k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
11
1.3k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
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!