Subject: Re: bug#79408: 31.0.50; VC commands for cherry-picking

From: Juri Linkov <[email-masked]>
Date: Tue, 09 Sep 2025 21:15:19 +0300

>> I guess the basic workflow would be to view a branch log
>> with e.g. 'C-x v b l', then after marking the required commits
>> invoke the new commands.
>
> Right.

We could also try to use the same UI as in e.g. Dired:

- in a *vc-change-log* buffer use 'm' to mark revisions;
- type 'C' to copy or 'M' to move (actually 'R' in Dired);
- select a branch name in the minibuffer with completion.

>> Are the last two commands equivalent to showing diff and invoking
>> 'C-c RET a' on it, with or without the prefix argument REVERSE?
>
> Yes, except that using 'C-c RET a' uses Emacs's merging logic, which may
> be less sophisticated than the backend's.  Hmm.  Maybe I should skip
> those commands for now.  What do you think?

I think it makes sense to implement these commands only when they
use backend commands.  Because using diff commands is already easy
with 'C-c RET a'.  These new commands could provide an alternative way
by relying on backend commands.