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
81
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
61
Fixing Performance and Memory Problems (RubyWine)
fcheung
0
59
Fixing Performance and Memory Problems
fcheung
2
520
Asking questions
fcheung
0
58
Extending Ruby
fcheung
1
480
Other Decks in Technology
See All in Technology
Oracle Cloud Infrastructure:2025年8月度サービス・アップデート
oracle4engineer
PRO
0
170
事業価値と Engineering
recruitengineers
PRO
8
5.3k
今!ソフトウェアエンジニアがハードウェアに手を出すには
mackee
1
230
ヘブンバーンズレッドにおける、世界観を活かしたミニゲーム企画の作り方
gree_tech
PRO
0
420
2025年になってもまだMySQLが好き
yoku0825
3
1.9k
AI時代に非連続な成長を実現するエンジニアリング戦略
sansantech
PRO
3
910
JuniorからSeniorまで: DevOpsエンジニアの成長ロードマップ
yuriemori
2
350
【Grafana Meetup Japan #6】Grafanaをリバプロ配下で動かすときにやること ~ Grafana Liveってなんだ ~
yoshitake945
0
220
コスト削減の基本の「キ」~ コスト消費3大リソースへの対策 ~
smt7174
2
320
エラーとアクセシビリティ
schktjm
0
140
Language Update: Java
skrb
1
150
生成AI時代に必要な価値ある意思決定を育てる「開発プロセス定義」を用いた中期戦略
kakehashi
PRO
1
240
Featured
See All Featured
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
The Cult of Friendly URLs
andyhume
79
6.6k
Six Lessons from altMBA
skipperchong
28
4k
Optimizing for Happiness
mojombo
379
70k
A designer walks into a library…
pauljervisheath
207
24k
Building Applications with DynamoDB
mza
96
6.6k
Designing Experiences People Love
moore
142
24k
We Have a Design System, Now What?
morganepeng
53
7.8k
KATA
mclloyd
32
14k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
131
19k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
44
2.5k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
51
5.6k
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!