Version control systems

Thomas Schilling nominolo at
Mon Aug 11 06:21:50 EDT 2008

On 11 Aug 2008, at 05:38, Manuel M T Chakravarty wrote:
> Correct me if I am wrong, but this sounds as if you support my  
> point that switching the GHC repo to git without doing the same for  
> the core libs (in an integrated way) would not address the problems  
> you experienced with darcs.

Partly.  It does address some issues (fear of conflict, speed, case- 
sensitivity bugs, easier branches).  I personally wouldn't mind  
having both Darcs and Git repositories, although I can understand why  
having a mixture of both is bad.  I was just mentioning some other  
advantages of also having the libraries in Git.

However, I think that it would be really disappointing if we would  
not move to Git for the main GHC repository.  Simon M reported that a  
merge took him over a whole day, Norman reported two weeks of lost  
work, Don reported corrupted repos, Simon PJ reported that in order  
to avoid conflicts he constantly unrecords and re-records one big  
patch;  all that doesn't give much confidence in Darcs.   
Additionally, no-one except David seems to actually understand Darcs'  
theory (and we don't even know if David actually does.)  Darcs 2  
claims to fix those problems, but I don't know how many are actually  
using it.  Darcs 1 had the exponential runtime bug and it wasn't  
discovered right away.  I don't believe that Darcs 2 can fulfil GHC's  
needs anytime soon, especially since it is always a bad idea to use a  
brand-new release of a not much used VCS.

(I am also no longer convinced that Darcs' automatic patch dependency  
calculations are actually a good idea.  Just because two patches  
don't touch the same files, doesn't mean they aren't semantically  
dependent.  Take for example "monadification" patches, which are  
typically submitted split up for each file.  A branch captures those  
dependencies just fine.)

/ Thomas
Push the envelope.  Watch it bend.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: PGP.sig
Type: application/pgp-signature
Size: 194 bytes
Desc: This is a digitally signed message part
Url :

More information about the Glasgow-haskell-users mailing list