>> Is there any hope for darcs repair to fix something like this?
>
> No, I don't think so. It's a non-local problem, meaning that for every
> conflict, darcs would have to search the entire repository to ensure that
> all the conflicting patches actually exist, and that would be extremely
> expensive, and relevant only when there are bugs in Darcs.Patch.Real.
Perhaps if we had a sort of darcs repair-just-this-one-patch command,
this sort of thing would be viable (but maybe not worth the
programmer-effort).
I keep thinking that it would be nice to have a twin program called
evildarcs (codarcs?) that did all those things you wouldn't want to do
with darcs in daily life. Like the yanking out and modifying of
patches in clear violation of dependencies, doing all the tedious
inventory-hacking for you.
Another idea that is floating around in my head is to go ahead and
implement darcs group and ungroup (unatomize and atomize). This sort
of thing would be useful for forensics as well, helping to 'simplify'
repositories.
Just brainstorming. Trying to find the best way to help people out
when darcs goes wrong. And maybe the solution could even become
useful for daily life. |