Make RepositoryState.REBASING_MERGE reachable again.
If a non interactive rebase is launched, stopping after a conflict should set the repository state to RepositoryState.REBASING_MERGE instead of RepositoryState.REBASING_INTERACTIVE. Bug: 452623 Change-Id: Ie885aab6d71dabd158a718af0d14fff643c9b850 Also-by: Arthur Daussy <arthur.daussy@obeo.fr> Signed-off-by: Laurent Delaigue <laurent.delaigue@obeo.fr> Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
This commit is contained in:
parent
2bd3556e7e
commit
a5c40a3862
|
@ -180,7 +180,7 @@ public void testPullConflict() throws Exception {
|
|||
+ remoteUri
|
||||
+ "\nSource change\n=======\nTarget change\n>>>>>>> 42453fd Target change in local\n";
|
||||
assertFileContentsEqual(targetFile, result);
|
||||
assertEquals(RepositoryState.REBASING_INTERACTIVE, target
|
||||
assertEquals(RepositoryState.REBASING_MERGE, target
|
||||
.getRepository().getRepositoryState());
|
||||
}
|
||||
|
||||
|
@ -225,7 +225,7 @@ public void testPullLocalConflict() throws Exception {
|
|||
String result = "<<<<<<< Upstream, based on branch 'master' of local repository\n"
|
||||
+ "Master change\n=======\nSlave change\n>>>>>>> 4049c9e Source change in based on master\n";
|
||||
assertFileContentsEqual(targetFile, result);
|
||||
assertEquals(RepositoryState.REBASING_INTERACTIVE, target
|
||||
assertEquals(RepositoryState.REBASING_MERGE, target
|
||||
.getRepository().getRepositoryState());
|
||||
}
|
||||
|
||||
|
|
|
@ -824,7 +824,7 @@ public void testStopOnConflict() throws Exception {
|
|||
"<<<<<<< Upstream, based on master\n1master\n=======\n1topic",
|
||||
">>>>>>> e0d1dea change file1 in topic\n2\n3\ntopic4");
|
||||
|
||||
assertEquals(RepositoryState.REBASING_INTERACTIVE, db
|
||||
assertEquals(RepositoryState.REBASING_MERGE, db
|
||||
.getRepositoryState());
|
||||
assertTrue(new File(db.getDirectory(), "rebase-merge").exists());
|
||||
// the first one should be included, so we should have left two picks in
|
||||
|
@ -887,7 +887,7 @@ public void testStopOnConflictAndAbortWithDetachedHEAD() throws Exception {
|
|||
"<<<<<<< Upstream, based on master\n1master\n=======\n1topic",
|
||||
">>>>>>> e0d1dea change file1 in topic\n2\n3\ntopic4");
|
||||
|
||||
assertEquals(RepositoryState.REBASING_INTERACTIVE,
|
||||
assertEquals(RepositoryState.REBASING_MERGE,
|
||||
db.getRepositoryState());
|
||||
assertTrue(new File(db.getDirectory(), "rebase-merge").exists());
|
||||
// the first one should be included, so we should have left two picks in
|
||||
|
@ -1009,7 +1009,7 @@ public void testStopOnConflictAndContinueWithNoDeltaToMaster()
|
|||
res = git.rebase().setOperation(Operation.CONTINUE).call();
|
||||
assertNotNull(res);
|
||||
assertEquals(Status.NOTHING_TO_COMMIT, res.getStatus());
|
||||
assertEquals(RepositoryState.REBASING_INTERACTIVE,
|
||||
assertEquals(RepositoryState.REBASING_MERGE,
|
||||
db.getRepositoryState());
|
||||
|
||||
git.rebase().setOperation(Operation.SKIP).call();
|
||||
|
@ -1300,7 +1300,7 @@ public void testStopOnConflictCommitAndContinue() throws Exception {
|
|||
// user can decide what to do. if he accidentally committed, reset soft,
|
||||
// and continue, if he really has nothing to commit, skip.
|
||||
assertEquals(Status.NOTHING_TO_COMMIT, res.getStatus());
|
||||
assertEquals(RepositoryState.REBASING_INTERACTIVE,
|
||||
assertEquals(RepositoryState.REBASING_MERGE,
|
||||
db.getRepositoryState());
|
||||
|
||||
git.rebase().setOperation(Operation.SKIP).call();
|
||||
|
@ -1401,7 +1401,7 @@ public void testStopOnConflictFileCreationAndDeletion() throws Exception {
|
|||
assertEquals(Status.STOPPED, res.getStatus());
|
||||
assertEquals(conflicting, res.getCurrentCommit());
|
||||
|
||||
assertEquals(RepositoryState.REBASING_INTERACTIVE, db
|
||||
assertEquals(RepositoryState.REBASING_MERGE, db
|
||||
.getRepositoryState());
|
||||
assertTrue(new File(db.getDirectory(), "rebase-merge").exists());
|
||||
// the first one should be included, so we should have left two picks in
|
||||
|
|
|
@ -1088,7 +1088,9 @@ else if (!isInteractive() && walk.isMergedInto(headCommit, upstream)) {
|
|||
rebaseState.createFile(HEAD_NAME, headName);
|
||||
rebaseState.createFile(ONTO, upstreamCommit.name());
|
||||
rebaseState.createFile(ONTO_NAME, upstreamCommitName);
|
||||
rebaseState.createFile(INTERACTIVE, ""); //$NON-NLS-1$
|
||||
if (isInteractive()) {
|
||||
rebaseState.createFile(INTERACTIVE, ""); //$NON-NLS-1$
|
||||
}
|
||||
rebaseState.createFile(QUIET, ""); //$NON-NLS-1$
|
||||
|
||||
ArrayList<RebaseTodoLine> toDoSteps = new ArrayList<RebaseTodoLine>();
|
||||
|
|
Loading…
Reference in New Issue