addressalign-toparrow-leftarrow-rightbackbellblockcalendarcameraccwcheckchevron-downchevron-leftchevron-rightchevron-small-downchevron-small-leftchevron-small-rightchevron-small-upchevron-upcircle-with-checkcircle-with-crosscircle-with-pluscontroller-playcrossdots-three-verticaleditemptyheartexporteye-with-lineeyefacebookfolderfullheartglobegmailgooglegroupshelp-with-circleimageimagesinstagramFill 1light-bulblinklocation-pinm-swarmSearchmailmessagesminusmoremuplabelShape 3 + Rectangle 1ShapeoutlookpersonJoin Group on CardStartprice-ribbonprintShapeShapeShapeShapeImported LayersImported LayersImported Layersshieldstartickettrashtriangle-downtriangle-uptwitteruserwarningyahoo

Billings: Distributed Version Control (Mercurial / Git)

At AWG: Park on 3rd Ave between 11th and 12th St.

Shawn Wilson will be presenting on distributed version control using Mercurial as an example and John Clayton will demonstrate his experience with Git. This presentation will cover some history of version control and the main features of a distributed version control system. You will learn the version control lingo such as committing, diffs, branching, and merging and see how these feats are accomplished using Git, Mercurial, and Meld, open-source programs that are available on Windows and Linux.

A Brief History of Version Control...

Version Control refers to a class of tools that allow a person to track changes in their files and to merge in changes to the same files made by others. These tools allow you to easily roll back to a previous edit if there is a problem after you have already saved your changes. They will usually keep track of only the changed portions of a file and then reconstruct the entire file as needed in order to save space (as opposed to storing a complete copy of the file for every little change).

In the beginning there were the local tools such as RCS (Revision Control System) and early VSS (Microsoft Visual SourceSafe) which allowed you to track changes on your local machine but were difficult to share with others. Then came the client-server tools such as CVS (Concurrent Versions System) and a new VSS that ran on a server, allowing any number of users to contribute to the same set of files. SVN (Subversion) improved the experience by supporting atomic commits (where changes to multiple files are tracked as a single operation) and gracefully handling files that are renamed or copied.

Today, we have a number of true distributed version control systems available, such as Mercurial and Git. In the distributed model, changes are committed to a local repository and then this repository is shared between users as a separate step. With these systems there is no requirement to set up a server, though it is often beneficial to designate an "authoritative" master repository that is generally hosted on a server.

Mercurial and Git are two of the more popular open-source distributed version control systems in use today.

Join or login to comment.

  • Ryan D.

    Any chance this will be live webcast, or recorded for later viewing? I would love to hear about it, but won't be able to attend in person. Thanks.

    January 31, 2013

    • Shawn W.

      Unfortunately I have no way of knowing it until the Hangout session is started. I'll get one going a few minutes early.

      February 6, 2013

    • Shawn W.

      Ryan, glad you joined the Hangout and sorry for the technical issues. Next time we'll use the live YouTube option (which goes away if you set a public hangout, odd) and pay better attention to the screenshare setup!

      February 7, 2013

  • Shawn W.

    Thank you to everyone who came out or joined the Google Hangout, and to John Clayton for sharing his Git knowledge. Looking forward to the next meetup!

    February 7, 2013

  • Shawn W.

    A Google Hangout URL will be announced shortly before the meeting starts.

    February 6, 2013

    • wilson m.

      Thanks for setting the Hangout, Shawn. I can't get back to Billings until tomorrow. G+ me at "[masked]".

      February 6, 2013

  • Shawn W.

    Park on 3rd Ave between 11th and 12th St.

    February 6, 2013

  • Shawn W.

    In related news, Microsoft just announced they are adding Git support to Visual Studio and Team Foundation Server: http://www.networkworld.com/news/2013/013013-microsoft-embraces-open-source-git-for-266280.html

    January 31, 2013

    • Alton C.

      I hope to encourage the decision to go with Git when we setup our new TFS instances. The VSS style of the current version control doesn't fit well with the way I like to work. The new features of TFS make it an attractive life-cycle tool otherwise.

      February 5, 2013

    • Ace O.

      I assumed you meant TFS's version control system as opposed to Visual Source Safe (VSS) which is completely different from TFS?

      I would be interested to hear the differences between TFS's Version Control System and Git. From what I've seen TFS's Version Control System is actually very similar to Git in terms of merging and change sets. The primary difference appears to be that TFS is completely centralized as opposed to Git's decentralized model.

      February 6, 2013

  • Ryan D.

    I'd like to attend, but only available if you can do it online. Thanks!

    February 5, 2013

  • Ace O.

    Hey sounds great, I'd be down for that. We use Subversion here at Computers Unlimited and are researching switching to Team Foundation Server.

    I'd be interested to hear how to deal with GitHub integration as well.

    1 · January 19, 2013

    • Daniel D.

      I have been working on doing Mercurial for my .net projects. There is a module for VS201[0-2] which is nice.

      January 25, 2013

    • Doug O.

      Ace...I personally love git on other projects through my consulting practice. Definitely check this out.

      January 29, 2013

  • Shawn W.

    AWG, located in the downtown corridor, have offered up their conference room for this Meetup.

    January 24, 2013

7 went

Our Sponsors

  • Workiva

    Financial Sponsor of MTP and BSDC 2017

  • Submittable

    Financial Sponsor of MTP and BSDC 2017

  • Xcentric

    Financial Sponsor of MTP and BSDC 2017

  • Zoot

    Financial Sponsor of MTP and BSDC 2017

  • SoFi

    Financial Sponsor of MTP and BSDC 2017

  • Wisetail

    Financial Sponsor of MTP and BSDC 2017

  • MT Code School

    Financial Sponsor of MTP and BSDC 2017

  • PrintingForLess

    Financial Sponsor of MTP and BSDC 2017

  • onXmaps

    Financial Sponsor of MTP and BSDC 2017

  • Homewood Suites Bozeman

    Provides conference room for Bozeman meetups.

Sign up

Meetup members, Log in

By clicking "Sign up" or "Sign up using Facebook", you confirm that you accept our Terms of Service & Privacy Policy