Add support for "git rebase --onto"
Those of us that employ a rebase-centric development model sometimes need to drop into the command-line to run "git rebase" with the --onto option.
The common use case is a longer-lived feature branch that several developers contribute to, and which gets rebased fairly often (e.g. weekly). If one developer has local commits that had not been pushed prior to another developer doing the weekly rebase (& force push), it is hard to migrate those commits onto the newly rebased feature branch without dropping onto the command-line to run "git rebase" with the --onto option.
The existing patch file feature request could be one solution, but still a bit manual. It seems like there could be a very sexy GUI gesture for this where you select one or more commits and just drag-n-drop them to a destination branch.
Comments: 5
Oldest
•
Newest
•
Most likes
•
Fewest likes
-
03 Mar
Jonathan Admin PinnedJonathan from GK here and v11.10 delivers meaningful progress to this request. As of GitKraken Desktop 11.10, you can now rebase a specific range of commits onto another branch directly from the UI.
Select the commits you want to move (multi-select in the graph), right-click the target branch, and choose "Rebase N commits
onto [branch]." Alternatively, select a single commit mid-branch and use the right-click context menu on the target branch.
This covers the most common rebase --onto use cases, including transplanting the top N commits from one branch onto a
different base.
Where this differs from the full git rebase --onto <newbase> <upstream> <branch> triplet: the explicit <upstream> cutoff is
inferred from your selection rather than being independently specified. For complex parallel-branch workflows requiring
precise upstream control, the CLI remains the complete tool.
We're leaving this open to track the remaining gap and feedback here continues to inform the roadmap. -
21 Jan, '22
Adam ManwaringI'd like to see this as well. I was thinking that maybe the UI for this could be something like this:
When someone right-clicks on a commit the context menu show the "Interactive Rebase # children of ?????" option with a draggable icon of some sort. Clicking the option behaves as it does now, but dragging the icon hides the menu, highlights the children commits, and allows the user to drag onto the target branch or commit. Then the interactive rebase dialog opens as usual and the rebase is applied to the target. -
09 Feb, '23
Thomas Einwallerplease add this feature - miss it every day and keeps me from not needing git Tower license anymore
-
19 Dec, '23
Joey Kelroy System"Rebase branch against specific commit" (suggested by James on 2023-12-14), including upvotes (1) and comments (0), was merged into this suggestion.
-
28 Oct, '25
Jesús GómezYou could call the feature: "transplanting" (man git-rebase)
```
First let’s assume your topic is based on branch next. For example, a feature developed in topic depends on some functionality which is found in next.
o---o---o---o---o master
\
o---o---o---o---o next
\
o---o---o topic
We want to make topic forked from branch master; for example, because the functionality on which topic depends was merged into the more stable master branch. We want our tree to look like this:
o---o---o---o---o master
| \
| o'--o'--o' topic
\
o---o---o---o---o next
We can get this using the following command:
git rebase --onto master next topic
```