+3

Log: Rebase by drag and drop between Branches and Commits panels

MATSUDA Takashi 2 years ago updated by arcadius 1 week ago 7

On the 'Commits' panel, you can rebase by dragging and dropping branches.


But if the branch you want to rebase and the target commit are far
apart, drag & drop becomes hard and you have to check out once.


So how about dropping branch tags in the 'Commits' panel on the branch of
the 'Branches' panel, or conversely allowing branches on the 'Branches'
panel to be dropped onto the commit of the 'Commits' panel?


Dropping commits onto Branches window is very much required. Currently to rebase to far branch I spend 5 minutes (!) to scroll, keeping mouse button pressed. Then I get conflict, solve it, and scroll 5 min again. Help!!!

Please explain what exact rebase you wanted to start? A long scroll shouldn't be necessary.

We have a large tree of branches: a master and some supported versions below. I must rebase f.e. 1 commit to the top (master's head). This commit is located f.e. ~10000 lines (commits) under the top. So I drag it and start to scroll Commits panel upwards, holding the mouse button. After several minutes I reach the top and drop it.

If smth unclear I can post video.

If it is about just 1 commit, why not use Cherry-pick?

One commit is just an example. It could be modified to «N commit(s)».

The topic is about all operations in Smartgit, performed by drag-n-drop in Commits panel, when source & target commits are «far» from each other. So concerned ops are Rebase, Cherry-pick (dragging commits) and Set 'branch_name' to 'commit_id' (dragging branches).

Onto what in the Branches view you want to drop the dragged commit? Maybe a screenshot sent to smartgit@syntevo.com helps me to better understand what you want.

Moving a Branch to a far Commit can be realized without drag-n-drop, by modifying context menu for Commits:

  1. Select Branch "MyBranchName" to move, in Branches window,
  2. Right-click on Commit to set Branch to,
  3. In context menu, select "Set Branch 'MyBranchName' to this Commit"