Instead just return success. In the case that no commit has been cherry-picked or reverted, just return the old HEAD. Bug: 333814 Change-Id: I67db2b77b52c43932436d22a8daa5a6556423484 Signed-off-by: Robin Rosenberg <robin.rosenberg@dewire.com>tags/v0.11.1
JGitText.get().commitOnRepoWithoutHEADCurrentlyNotSupported); | JGitText.get().commitOnRepoWithoutHEADCurrentlyNotSupported); | ||||
RevCommit headCommit = revWalk.parseCommit(headRef.getObjectId()); | RevCommit headCommit = revWalk.parseCommit(headRef.getObjectId()); | ||||
newHead = headCommit; | |||||
// loop through all refs to be cherry-picked | // loop through all refs to be cherry-picked | ||||
for (Ref src : commits) { | for (Ref src : commits) { | ||||
// get the commit to be cherry-picked | // get the commit to be cherry-picked | ||||
merger.setBase(srcParent.getTree()); | merger.setBase(srcParent.getTree()); | ||||
if (merger.merge(headCommit, srcCommit)) { | if (merger.merge(headCommit, srcCommit)) { | ||||
if (AnyObjectId.equals(headCommit.getTree().getId(), merger | |||||
.getResultTreeId())) | |||||
continue; | |||||
DirCacheCheckout dco = new DirCacheCheckout(repo, | DirCacheCheckout dco = new DirCacheCheckout(repo, | ||||
headCommit.getTree(), repo.lockDirCache(), | headCommit.getTree(), repo.lockDirCache(), | ||||
merger.getResultTreeId()); | merger.getResultTreeId()); |
JGitText.get().commitOnRepoWithoutHEADCurrentlyNotSupported); | JGitText.get().commitOnRepoWithoutHEADCurrentlyNotSupported); | ||||
RevCommit headCommit = revWalk.parseCommit(headRef.getObjectId()); | RevCommit headCommit = revWalk.parseCommit(headRef.getObjectId()); | ||||
newHead = headCommit; | |||||
// loop through all refs to be reverted | // loop through all refs to be reverted | ||||
for (Ref src : commits) { | for (Ref src : commits) { | ||||
// get the commit to be reverted | // get the commit to be reverted | ||||
merger.setBase(srcCommit.getTree()); | merger.setBase(srcCommit.getTree()); | ||||
if (merger.merge(headCommit, srcParent)) { | if (merger.merge(headCommit, srcParent)) { | ||||
if (AnyObjectId.equals(headCommit.getTree().getId(), merger | |||||
.getResultTreeId())) | |||||
continue; | |||||
DirCacheCheckout dco = new DirCacheCheckout(repo, | DirCacheCheckout dco = new DirCacheCheckout(repo, | ||||
headCommit.getTree(), repo.lockDirCache(), | headCommit.getTree(), repo.lockDirCache(), | ||||
merger.getResultTreeId()); | merger.getResultTreeId()); |