On Thu, Jan 10, 2008 at 06:23:56PM +0100, Nicolas Pouillard wrote:
> Excerpts from David Roundy's message of Thu Jan 10 18:08:59 +0100 2008:
> > On Mon, Jan 07, 2008 at 03:43:40PM +0000, Nicolas Pouillard wrote:
> > > Mon Jan  7 16:02:24 CET 2008  [EMAIL PROTECTED]
> > >   * test: Exibit a falling test about rollback.
> > >   Indeed  the only test about rollback was br0ken by a prior test that 
> > > creates a
> > >   directory  and  remove  read  permissions  to  it.  The  rollback test 
> > > do some
> > >   records  that  silently  fail  by lack of permissions, finally the 
> > > rollback is
> > >   cancelled since the named patch doesn't exist.
> > >   This shows that rollback need some care.
> > 
> > Thanks for the patch!
> > 
> > I've actually been debating the idea of removing the rollback command.
> > It's poorly implemented, and has been a source of confusion and problems.
> > What do you think?
> 
> The source of problems was about hidden conflicts, right?
> It's no longer a problem in darcs2, right?
>
> It's mainly a common use case when can no longer use amend-record.
> 
> I  think that's also a great tool to temporarily revert a patch without having
> two repositories.
> 
> Moreover  this  kind of operation is waited when one know that patches must be
> invertible.

The problem is that it's a pretty limited and counterintuitive command.
You can't (currently) rollback a patch if there is a patch that depends on
it which has been rolled back already.  And it doesn't affect the working
directory, which makes certain things much easier (e.g. no need to deal
with conflicts), but doesn't match what most folks actually want to do.
Also, you can't add a note indicating *why* a patch was rolled back, which
is a pretty big downside.

Having just chatted on this subject with a friend who walked by my office,
I think what I'll do is implement a modified rollback that will allow you
to undo more than one named patch at a time, and will make those changes in
the working directory as well as recording them, and will allow you to
provide a description of why you're rolling the change back... and will
also (maybe not in the first draft) allow you to roll back just a subset of
the primitive changes in those patches.  I think this'll be more useful and
also easier to implement.
-- 
David Roundy
Department of Physics
Oregon State University
_______________________________________________
darcs-devel mailing list
[email protected]
http://lists.osuosl.org/mailman/listinfo/darcs-devel

Reply via email to