Claus Reinke wrote:
going back from the use of darcs-specific 'pull --intersection' (but still relying on selective pull in some form), and addressing Roman's point about avoiding conflicts:

0. for each platform, have a list of successfully tested patches
1. humans (GHC users, needing a working build of HEAD):
       pull the lists of tested patches
       pull only the patches on the list for their platform
           (this could be handled by a script like darcs-all, provided
            that the VCS supports selective pulling)
2. humans (GHC developers, needing a validated HEAD):
       pull all patches into a local reference repo
       pull tested-only patches into a local validate repo
       develop/validate in validate repo
       check for conflicts wrt reference repo
       push validated and conflict-free patches to main_repo
       watch out for breakage reports from builders on other platforms
3. builders (on platform X, with list of successfully tested patches)
       pull all patches
       try to build
if successfull, add all new patches to platform X list if fails, publish list of all new patches as failing
               (in need of attention for platform X)

Also, isn't one of the reasons for switching VCS to make
conflicts less of an issue?

selective pull only really works in darcs. In the other VCSs it implies having a separate branch for each re-ordering of the patches, and hoping that merge works properly.

Cheers,
        Simon

_______________________________________________
Cvs-ghc mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/cvs-ghc

Reply via email to