Re: [PATCH 16/18] revert: Remove sequencer state when no commits are pending

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi again,

Jonathan Nieder writes:
> Ramkumar Ramachandra wrote:
>> Okay, I don't follow.  Wouldn't this function need to parse the todo
>> sheet and figure out how many instructions are left?  For that, the
>> todo parsing functions can't be buried in builtin/revert.c, no?  Hence
>> I said "expose" them -- or move them to sequencer.c.
>
> Oh, that makes sense.  Sorry for the nonsense.  If I were in your
> shoes, I'd move everything below pick_commits to sequencer.c.

:sigh: I thought it would be easy too, but there are several
complications.  I'll spare you the gory details of the series I'm
preparing and tell you the main problem briefly:
Notice how the API of read_populate_todo includes opts.  Arguably, I
did this with good reason: I didn't want `git cherry-pick --continue`
to continue a pending `git revert` operation and viceversa.  However,
this means that option parsing and todo parsing are slightly tangled
up now -- I could always pass a dummy opts structure with only the
action filled in, but I think that's inelegant.  So, I'm currently
working to untangle them by changing the way a todo list is
represented -- just a commit_list won't do.  Once I change this, a
simple `git cherry-pick --continue` will be able to continue any
pending sequencer operation, but this is arguably a big patch.  Once
that is done, I can move dependent functions to sequencer.c and expose
an API in sequencer.h for commit.c to use.  Also, I don't want to move
things to sequencer.c and change the API until I can imagine other git
programs working with the generalized sequencer; I hope it'll be clear
after a weekend of work.

Long story short: I'd like it if we could bear with this slight
annoyance (removal of sequencer state when one commit is pending) and
get the series merged, so that I can work on a series to improve the
experience based on this series.

Thanks.

-- Ram
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]