Interactive Rebase: stop at selectable commits ("edit")

Iulian Onofrei 3 months ago updated by Thomas Singer 2 months ago 3

It would be great if you could select individual commit(s) for editing while rebasing interactively. Currently, you can only:

1. either edit only one commit at a time, by using the "Modify or Split Commit" option

2. either edit only the commit message, by using the "Rebase Interactive From" option

I think that an "Edit Commit" option, along the current "Edit Message" one, in the interactive rebase window would be the best solution.

Is it necessary for you to have it in the interactive rebase or would it be sufficient to select the commits and then choose Modify or Split Commits from the context menu?

That's just where I expected it to be. I figured that, since I can edit the message, I could edit the content too. Also, since I was doing interactive rebases in the terminal, where you have to replace `pick` with `edit`, it makes more sense for me, and it's clearer to have it in the interactive rebase window.

Also, the most common case for me when I need this is when I reorder or squash commits, that I know that will cause other commits to fail building (without conflicts), and I want to edit them in the same step, instead of finishing the rebase, and then doing another one.

With this, I think that the interactive rebase could get closer and closer to the native functionality, for example, by adding the `exec` command too. Though maybe this point isn't that important, since the rest of the commands are quite advanced, so probably not used often.

Having said that, selecting multiple commits would work too, over not having this ability at all.


It is not our intention to simply copy the command line features in SmartGit, but rather find solutions that better suite a GUI application, especially for those users who have not used the command line Git.