Version control systems

Simon Marlow marlowsd at
Wed Aug 13 03:36:49 EDT 2008

Manuel M T Chakravarty wrote:

> Everybody who contributes to the boot/core libraries needs to validate 
> their patches.  If the GHC version of the libraries is in git, then all 
> library code needs to be validated against the git version of the 
> libraries before it can enter the master repository.  I don't see how 
> that makes anything easier for anybody.
> As I said before, I believe there is exactly one sane solution: all boot 
> libraries use the same vcs as ghc.

I don't think this completely sane :-)

It's not fair or reasonable for the GHC project to require everyone else 
contributing to the core libraries to validate their changes against 
GHC.  We need to be branching the shared repositories, so that we can 
keep the GHC branches working and sync up with the shared repositories 
as necessary.  Morally this is the right thing; technically its a lot 
more difficult than not forking.

What would make it much easier is for both the original shared 
repository and GHC's branch to be git repositories (or branches of the 
same repo): git is really good at having two parallel lines of 
development that sync occasionally.  Having one in darcs and one in git 
would be painful, but doable.

So I suggest we propose moving all the core packages to git, and we 
translate all those for which nobody objects to the change.  For the 
others, we'll keep them in darcs and live with the pain.


More information about the Glasgow-haskell-users mailing list