This patch is a first stab at this. It'd be nice to be able to not require a
URL, by taking the default remote as the default.
1 patch for repository http://darcs.net:
Sun Aug 19 02:29:26 BST 2012 Owen Stephens <darcs@owenstephens.co.uk>
* resolve issue2225: add an option to obliterate all patches not in remote repo
Just one bit of grumpy old man: wouldn't it make sense to have the
not-in-repo integrated to --match and available to all commands? For
instance, it could probably help with rebase suspend or amend-record.
This implementation also seems to (silently?) ignore --match if
--not-in-repo is given, which is not good.
Yes, almost certainly, re: --match.
I hadn't thought of the applicability to rebase/amend, good ideas, and
persuasive for making it part of --match.
I'll take a look at some point, and try and integrate it in a nice way -
including the ignoring of --match flags as *is* currently (stupidly) the
case.
Thanks Florent!
I think it would be hard to make this an option in --match (a "primitive matcher") because the
efficient implementation depends on being able to do findCommonAndUncommon in a single pass
(and thus take account of clean tags etc), whereas --match would allow for things like --match
"(in-repo foo && hunk wibble) || (!in-repo bar && hunk wobble)" which certainly can't easily
be implemented that way.
I'm not sure if it would make sense to integrate it with Darcs.Patch.Match in the way various
other patch-selection options are.
Certainly rebase suspend would benefit from it.
*reprod* - do you still plan to do any more with this, or should we
just leave things as they are?
One thing I keep wanting is for it to respect the same default repo as
push/pull do, so I don't have to retype it.
Two weeks late after prodding, but I've just sent a new follow-up patch
to this that allows multiple repos and defaults to the push/pull default
repo. Sorry about the silence and delay!