Luke Palmer wrote: > On Fri, Aug 1, 2008 at 3:45 PM, Eric Kow <[EMAIL PROTECTED]> wrote: >> >> "I would contribute to darcs if only..." >> > > I haven't used darcs much, so it's possible that I'll be forced to start > contributing by my own binding hypothetical. > > I would contribute to darcs if only it had support / could have support > for > splitting and merging repositories. For example, I like to work in a big > repository of all my stuff ever, because most of the things I do rarely > exceed an experiment in one file. But once something does get big enough > to > be interesting, I want to split it off into its own repository. But > that's just the use case: doing it the git way (go through all patches, > discard irrelevant ones, filter relevant ones, thus losing all correlation > with the original repository) is not going to inspire me; I'd like to see > support for it in the beautiful patch theory.
I have once proposed a scheme that would nicely solve this. The naive way to emulate your split feature would be to create a branch where you delete all the stuff you don't want and then maybe move the subproject to a new directory (nearer the top-level). This doesn't work, however, at least not in practice. This is because deletion of a file conflicts with a change to the same file which leads to a huge amount of conflicts each time you pull from the old combined repo. And the reason you get these conflicts is that in darcs a file always gets emptied before deletion, and this is because changing a file depends on its existence in the first place. I proposed to change this and allow changes to non-existing files, so called 'ghosts'. This has a number of interesting consequences, among them that you could delete as many files as you want and will never again get a conflict with changes to those files (that is, unless you explicitly 'resurrect' the ghost). Unfortunately few people (and none of the core-developers) seemed to be interested :( The small thread that developed on the darcs-users list should still be available in the archives if you are interested in the details. Cheers Ben _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe