-
Notifications
You must be signed in to change notification settings - Fork 20
Description
Ideally, we would be able to split a commit into a different number than exactly two commits, but instead into any number of commits. It should be possible to create/reorder/delete commits, set their messages, and move selected lines between commits.
Meta's "Interactive Smartlog" extension that I used internally had a really good interface that would be nice to emulate, where you could scroll horizontally through a set of commit selectors and edit them. Unfortunately, I can't find a publicly-available reference. They might implement it in the Sapling VS Code extension at some point.
There's some existing code in the scm-record codebase to render side-by-side commit UIs, although it's not currently exposed/available to callers. It would also work for a first pass to render only one "active" commit at a time, and allow sending a selected line to an arbitrary commit.
Note that this is incompatible with the typical difftool/mergetool interface, so callers would have to integrate with scm-record specifically for now.