Handle rebase modes 'preserve' and 'interactive' in EGit
commit86cc51b4d50b33fd6caf8dd1c9f6daa32b14a761
authorThomas Wolf <thomas.wolf@paranor.ch>
Fri, 12 Aug 2016 21:46:04 +0000 (12 23:46 +0200)
committerMatthias Sohn <matthias.sohn@sap.com>
Thu, 20 Oct 2016 20:22:56 +0000 (20 22:22 +0200)
treee6c57784676dcdb0cff99554b1d55b02ebcf8d70
parenta5209fccadb30ea2e20a67b30d2949eabb8ab918
Handle rebase modes 'preserve' and 'interactive' in EGit

EGit and JGit treated branch.<name>.rebase as a boolean config value,
which is wrong: git actually also allows 'preserve' and 'interactive'.

Since commit aadbb158 in JGit, JGit does recognize these extra values.

Adapt the EGit UI (wizards & dialogs for branch creation, branch
configuration, pulling and pushing a branch) to provide a UI to let
the user select any valid BranchRebaseMode value. Introduce a new
BranchRebaseModeCombo for this.

Adapt UI tests.

Honor the setting in all relevant operations in EGit.

Note that JGit currently ignores the "interactive" setting in a
PullCommand and performs a normal rebase instead.

Bug: 499482
Change-Id: I0a3b639bbb9e5dd5d93134587410ba72c0549cc7
Signed-off-by: Thomas Wolf <thomas.wolf@paranor.ch>
19 files changed:
org.eclipse.egit.core/src/org/eclipse/egit/core/op/CreateLocalBranchOperation.java
org.eclipse.egit.core/src/org/eclipse/egit/core/op/PullOperation.java
org.eclipse.egit.gitflow/src/org/eclipse/egit/gitflow/op/FeatureTrackOperation.java
org.eclipse.egit.ui.test/src/org/eclipse/egit/ui/internal/push/PushBranchWizardTest.java
org.eclipse.egit.ui.test/src/org/eclipse/egit/ui/internal/push/PushBranchWizardTester.java
org.eclipse.egit.ui.test/src/org/eclipse/egit/ui/internal/push/PushToUpstreamTest.java
org.eclipse.egit.ui.test/src/org/eclipse/egit/ui/view/repositories/GitRepositoriesViewBranchHandlingTest.java
org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/UIText.java
org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/commands/shared/RebaseCurrentRefCommand.java
org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/components/BranchRebaseModeCombo.java [new file with mode: 0644]
org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/components/UpstreamConfigComponent.java
org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/dialogs/BranchConfigurationDialog.java
org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/dialogs/RebaseTargetSelectionDialog.java
org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/pull/PullWizard.java
org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/pull/PullWizardPage.java
org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/push/PushBranchPage.java
org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/push/PushBranchWizard.java
org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/repository/CreateBranchPage.java
org.eclipse.egit.ui/src/org/eclipse/egit/ui/internal/uitext.properties