Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 356954 - Add rebase --onto functionality to history view
Summary: Add rebase --onto functionality to history view
Status: NEW
Alias: None
Product: EGit
Classification: Technology
Component: UI (show other bugs)
Version: unspecified   Edit
Hardware: All All
: P3 enhancement (vote)
Target Milestone: ---   Edit
Assignee: Project Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-09-07 11:29 EDT by Stefan Lay CLA
Modified: 2011-09-07 21:38 EDT (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Stefan Lay CLA 2011-09-07 11:29:29 EDT
For rebase --onto two commits have to be selected: <newbase> and <upstream>. <upstream> is needed to determine the range of commits to be rebased onto <newbase>.

A possible solution could be to add a new context menu entry to the history view and let the selected commit be the <newbase>. Then a UI would be opened where the user can select the range of commits which will be rebased onto <newbase>. The UI would contain all commits reachable from HEAD but not from <newbase>, selection of a commit would automatically select the range from the commit to HEAD.

Example:

        A---B---C topic <HEAD>
         /
    D---E---F---G master
    
I want to rebase B and C onto master, topic is checked out. On G I select "Rebase onto...". The a dialog opens where I see 

C
B
A

I select B, the UI automatically selects the also C. Then I press a button "Rebase".

The result will be

        A---B---C <ORIG-HEAD>
         /
    D---E---F---G master
                      \
                        B'---C' topic <HEAD>