RFC: migrating to git
rl at cse.unsw.edu.au
Tue Jan 11 22:57:36 CET 2011
On 11/01/2011, at 21:41, Iavor Diatchki wrote:
> If GHC and the libraries on which it depends were in git (migrated, or mirrored), then we could use git sub-modules to track the dependencies between changes to GHC and changes to the libraries.
> Roughly, the workflow would be like this:
> 1. Make a change to the library and commit it.
> 2. Make a change to GHC.
> 3. Make a GHC commit which records the change and the dependency on the commit in the library repository.
What about dependencies which go the other way? Actually, the dependency is often mutual: the GHC change won't work without the library change and the library change won't work without the GHC change. Does git support this?
> This is useful because when someone gets the changes to GHC, they would know that they need to update their library as well (and there is tool support to make all updates automatically). This kind of dependency is not at all obvious with our current workflow.
IMO, darcs-all works pretty well. I don't think I ever really had problems with missing library patches.
> The same method works for going back to a previous state of the project, where one can "rewind" the libraries to their old versions too.
This would be useful. Unfortunately, git's rewinding seems rather crippled compared to darcs.
More information about the Cvs-ghc