Upload
jayantha-sirisena
View
865
Download
0
Embed Size (px)
DESCRIPTION
A presentation on distributed version controlling with Mercurial. starts with some introduction on the concept of distributed version controlling and then guidance tp choose best version controlling system out of available tools.
Citation preview
Work EasierWork Faster
”Version tools are not just important for maintaining a history of a project, they are also the foundation for a team to
collaborate” -Martin Fowler
http://martinfowler.com/bliki/VersionControlTools.html
Outline
Bit Of HistoryCentralized vs. DistributedDVCS repository structure and operation conceptsAdvantages over Centralized VCSMercurialWhen it fails
History
CVS(Concurrent Versioning System) started in 1986
On top of CVS –Subversion(2000) ,Perforce (1995)BitKeeper was the first truly DVCSGit, Mercurial ,Bazzar (2005) Currently in the field – Git , Mercurial
With Centralized VCS
CI server
With Distributed VCS
CI Server
With Distributed VCS
With Distributed VCS
With Distributed VCS
Dinesh
Buddhima
RuwanKapila
CI Server
Working
Directory
Local Repo.
Remote repo.
Hg Update
Hg Commit Hg Push
Hg pull
Hg add
Hg merge
Local Remote
Structure and operation
Branching , Merging and Tagging
Experimental, Feature branchesTagging is just giving a name to a changesetLocal and global taggingBranch security and policiesMerging – Change sets vs. Revisions
With Agile Teams
Workflows
Flexibility of choosing your own workflow – Agile ?
Policies witching team
Workflows
Workflows
Workflows
Other Advantages
Renaming and Copying.SVN and .hg FoldersInbuilt web serverspace ?
Mercurial
We chose Hg instead of Git, BazzarLittle slower than gitFriendly for windows / Cross platform support-
(TortoiseHg, Visual Hg)Similar syntax to SVNLower maintenance and easier learning curve than
GitCopying files supported
http://martinfowler.com/bliki/VersionControlTools.html
When It Fails
Pessimistic locking Who has the latest revision ? Repository becomes publically available ?
Who Trust Mercurial
References
1. http://www.infoq.com/articles/agile-version-control
2. http://martinfowler.com/bliki/VersionControlTools.html
3. http://www.joelonsoftware.com/items/2010/03/17.html
4. http://betterexplained.com/articles/intro-to-distributed-version-control-illustrated/
5. http://progit.org/book/ch5-1.html
6. http://www.infoq.com/articles/agile-version-control