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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Frederick Cheung
April 20, 2013
Technology
100
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Introduction to Version Control
Lightning talk on version control from Rails Girls London.
Frederick Cheung
April 20, 2013
More Decks by Frederick Cheung
See All by Frederick Cheung
how_to_ab_test_with_confidence_railsconf.pdf
fcheung
0
76
Fixing Performance and Memory Problems (RubyWine)
fcheung
0
92
Fixing Performance and Memory Problems
fcheung
2
560
Asking questions
fcheung
0
84
Extending Ruby
fcheung
1
520
Other Decks in Technology
See All in Technology
大量データに対しても、生成AIを用いてリーズナブルにデータ加工をしたい!Databricksのai_queryについて調べてみた
kamoshika
1
130
Kaggleで成長するために意識したこと
prgckwb
2
340
Keeping applications secure by evolving OAuth 2.0 and OpenID Connect
ahus1
PRO
1
160
しぶいSRE: サーバから見えない障害にどう向き合うか。ラストワンマイルのデバッグ実践 / Shibui SRE
kanny
13
6.1k
Databricks 生成AIガバナンス実践ワークショップ / LLMOps-workshop
databricksjapan
0
110
インフラと開発の垣根を超えていき!〜元AWSインフラエンジニアがAWS開発で奮闘している話〜
hatahata021
3
180
証券システムを10年Scalaで作り続けるということ - 関数型まつり2026
krrrr38
3
840
技術イベント終了後、運営の 事後タスクは丁寧に (心がけています)/ #tamagawadev
nishiuma
1
100
非定型なドキュメントを効率よくリファクタする 〜えぇ!?仕様書27本の移行が1日で終わったって!?〜
subroh0508
2
390
凡エンジニアがこの先生きのこるためには。〜TypeScript完全に理解したい〜
alchemy1115
2
190
「最後に責任を取るのはチーム」— 人間のPRレビューを最小化してアップデートしたメンタルモデル
jnishime_dresscode
0
640
「ちゃんとやっている」は独りよがりだった ― 不安に寄り添うインシデント対応へ / Towards incident response that addresses anxieties
chmikata
1
5.3k
Featured
See All Featured
Why Our Code Smells
bkeepers
PRO
340
58k
AI: The stuff that nobody shows you
jnunemaker
PRO
8
830
Leading Effective Engineering Teams in the AI Era
addyosmani
9
2.1k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
220
The Spectacular Lies of Maps
axbom
PRO
1
850
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
460
A better future with KSS
kneath
240
18k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
9.1k
First, design no harm
axbom
PRO
2
1.2k
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
360
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.2k
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!