Managing change is a crucial part of building software. Mastering the source control tool Mercurial will help you gain significant insight into how your code is changing. That insight will allow you to track down bugs, remove duplication, discover refactorings, and maintain quality. We'll do a quick tour of basic Mercurial, then dive into its more advanced features. While advanced, they are still practical enough to be used during your day to day development. Essential features we'll discuss include named branches, Mercurial Queues, the record extension, aliases, shell functions, log acrobatics, blame, and sub repos. Though the topic here is Mercurial, the practices and concepts also apply to Git.
11th–13th January 2012