I decided to help out Bart and Phil by opening the libMicro project. The source for libMicro has been open for a while (hosted in the performance community), and internally, Bart kept it in a Teamware workspace. But now we’ve got it officially ensconced in a project of its own, and the source has been moved into a Mercurial repository. As a result, you can now browse the source online! I’ve also been attempting to make some improvements to it which you can also examine. Here are some notes which might be useful to other folks making similar Teamware-to-Mercurial transitions:
- There are some good directions here for setting up a repository.
- You’ll want to set up a personal ~/.hgrc file because you probably want to associate your email address with your putbacks. (So that you can be e.g. Joe.Smith@sun.com and not firstname.lastname@example.org. See hgrc(5). Note that if you’ve set your repository to send notifications to a list (like email@example.com) this is especially important. I set the from= and username= directives.
- You should set up an hgignore(5) file for your repository. The idea is to tell Mercurial which files it should definitely not care about. Things like .o files and generated binaries. .hgignore is just another file which you can check into your repository and version control.
- You may wish to go through your source files and remove and SCCS detritus (like #pragma ident directives) since Mercurial doesn’t use these.
Kudos go to the OpenSolaris infrastructure team: The Mercurial infrastructure just works (perhaps with the exception of the email caveat I mention above). That said, there are a couple of minor improvements I’d like to see:
- A link from the project page listing the repositories, including: committers, repository URIs, links to the source browser, etc.
- In the administration GUI, the repository URIs are not displayed, and should be.
- A way to display recent commits on the project page.
All in all, I’ve had a very positive experience with this new set of tools. I think the trajectory here looks very, very promising.