distributed version control systems: a guide for the perplexed
Post on 17-May-2015
443 Views
Preview:
DESCRIPTION
TRANSCRIPT
Distributed Version Control Systems
A Guide For The Perplexed
Thanks For Listening!Slides: speakerdeck.com/alanstevens
Email/IM: alanstevens@gmail.com
Website: halanstevens.com
Twitter: @alanstevens
Why do we need
VCS?
What VCS have you
used?
What were the benefits and
shortcomings of those systems?
Why was DVCS
created?
DVCS OptionsGit: git-scm.com
Mercurial: mercurial.selenic.com
Bazaar: bazaar-vcs.org
What are the benefits of VCS?• Disposable Experimentation
• Each working copy effectively functions as a remote backup
• Absolute control over the flow of local changes
• Offline accessibility
• Stays out of the way
• Common operations are very fast
• Easier merge operations
“If I had to pick one word to summarize the benefits of DVCS, I’d say that word is flexibility.”
Jeff Atwood
“you can branch any time your organizational goals require it, because merging back will be a piece of cake.”
Joel Spolsky
It puts the developer in
control.
What’s the workflow?
Mercurial1. hg pull
2. {do work}
3. hg addremove
4. hg status
5. hg commit -m “foo”
6. hg pull
7. hg push
8. *repeat*
Git1. git pull
2. {do work}
3. git add -A
4. git status
5. git commit -m “foo”
6. git pull
7. git push
8. *repeat*
That’s all you need to know.
Here are two neat ideas you don’t need to
know.
Branch and Merge
Rebase!
Command Line vs. GUI
GitExtensions
Tortoise HG
SourceTree
GitHub for Windows
chocolatey.org
Hosting
Resources
hginit.comthink-like-a-git.nethelp.github.com
“possibly the biggest advance in software development technology in ... ten years”
Joel Spolsky
top related