Mercurial: Install Guide

MercurialEclipse will be the plugin we will use. It requires an install of hg, so I suggest we use TortoiseHG, which incorporates Explorer integration, as well as hg.

Mercurial Overview

Project Website:http://mercurial.selenic.com/wiki
Many resources here, including a link to the book the developer has written about Mercurial, and its usages.

TortoiseHG

Project Website:TortoiseHG

Installers

A copy of the installer is on the shared-usb drive, in the Mercurial Directory

Configuration

Hopefully, we won’t have to use TortoiseHG for much. I think we’ll be using it for merges. The only configuration required would be for Username on the commit tab of global properties (right-click on any folder in Explorer). We’ll continue to use initials for commit messages

If one doesn’t exist already, create a Mercurial.ini file in home for your user (Windows is Documents and Settings{user name}), and place the following lines in it

[extensions]
rebase =

This will enable the rebase extension. When doing an update, do a rebase as well. This will move any locally committed changesets after any incoming changesets. This will avoid all the branches and merges that result otherwise, and keep the change graph cleaner.

MercurialEclipse

Project Website:MercurialEclipse

This plugin basically calls the commandline hg, and then updates the Eclipse display accordingly. It would be better if it was written as a client, but it doesn’t appear that will happen…

  • Shows changes in project explorer/navigator.
  • Synchronize view is relative to local and central repository. Haven’t found an easy way to see changes relative to local only, so no speed improvement here. Could leave TortoiseHG ‘View File Status’ dialog open, and do refresh, but it doesn’t sort intelligently relative to java workspace/package.

Configuration

From menu: Team-MercurialEclipse

  • point to mercurial
  • change username
  • enable font and color decorations
  • automatically associate mercurialeclipse with new projects

Console

  • any changes want. defaults are fine

Performance

  • Always call hg status for whole repository
  • be careful with the other 2, as they cause huge performance hits. The docs say Compute deep decoration is a waste of time if calling hg status for whole repository.

It's only fair to share...
Share on FacebookGoogle+Tweet about this on TwitterShare on LinkedIn

Leave a Reply