Have You Tried Mercurial?

I've been using Mercurial over the last few months trying to understand what it will take to transition from Teamware. The Open Solaris team did quite a bit of analysis on the available open source Source Code Management (SCM) choices.

Besides getting my silly comic posted, I just wanted to make sure that people understood the meaning of a Distributed Source Code Management (DSCM) as described in the Open Solaris DCM Requirements Document. The SCM needs of Open Solaris are very similar to the needs of OpenJDK. The critical concept with a DSCM is what the Open Solaris requirements document calls "Unbiased and disconnected distribution" or the ability to create completely separate repositories or source trees that can operate independently from one another with full SCM functionality. This is more than just a simple parent and child relationship. Any two repositories that have a common ancestor can exchange changes. With Teamware this was with revisions to individual SCCS s.\* files, one per managed file. With Mercurial it's changesets, which includes changes to multiple files.

In general many of the basic concepts between Teamware and Mercurial are the same, but it's different enough that we all will be on a learning curve for a while. Teamware has been used by the JDK developers for over 10 years. Speaking for myself, Mercurial is a nice system and as we get comfortable with it I think this will be a great DSCM solution for us.

So on to the comic... About a year ago we traveled along the northern coast of California and stopped at the "Trees of Mystery" on Highway 101. We didn't take the tour, but I couldn't help but take a picture. Using it now seemed appropriate as I play around with the 35,000 files in the primary source base of the JDK.

mercurial.jpg

-kto

Comments:

Post a Comment:
Comments are closed for this entry.
About

Various blogs on JDK development procedures, including building, build infrastructure, testing, and source maintenance.

Search

Archives
« April 2014
SunMonTueWedThuFriSat
  
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
   
       
Today