(copy/paste sbeal response in diff't thread)
> i looked into that sometime in the past year. In theory, once you can pop the 
> top-most
> commit, you can pop any number (but always from the top). But the devil's in 
> the details -
> getting each and every cross-reference and delta removed/replaced properly is 
> remarkably
> difficult.

Are references "backward", "forward", or both ? What I mean is,
roughly, is fossil a doubly linked list, or singly, and if single,
what direction?

-bch


On 10/28/14, Richard Hipp <d...@sqlite.org> wrote:
> On Tue, Oct 28, 2014 at 1:31 PM, B Harder <brad.har...@gmail.com> wrote:
>
>>  I would like an option to "pop and discard" from a branch
>> tip. Possible? If the repo has been sync'd, then that work would come
>> back to you on next sync (that's understood), but if it hasn't been
>> sync'd, it could be useful.
>>
>
> To do an "uncommit" for a check-in that has not yet been synced, all you
> have to do is identify the particular artifacts that were added by that
> commit (the  RCVFROM table should be helpful there) and remove them from
> the BLOB table of the database (taking care to also fix up the DELTA table
> so that it does not depend on any BLOB that you removed).  Then rebuild.
>
> You could perhaps omit the rebuild step if you go to the extra work of
> removing the artifacts from the various other tables in the database.  Or
> maybe you want an "uncommit" to force a "rebuild" in order to make it a
> little more painful, and hence discourage its use.  I dunno.
>
> If somebody has a patch for the above, we can look at adding it...
>
> --
> D. Richard Hipp
> d...@sqlite.org
>
_______________________________________________
fossil-users mailing list
fossil-users@lists.fossil-scm.org
http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users

Reply via email to