Example usage for org.eclipse.jgit.lib RepositoryState CHERRY_PICKING

List of usage examples for org.eclipse.jgit.lib RepositoryState CHERRY_PICKING

Introduction

In this page you can find the example usage for org.eclipse.jgit.lib RepositoryState CHERRY_PICKING.

Prototype

RepositoryState CHERRY_PICKING

To view the source code for org.eclipse.jgit.lib RepositoryState CHERRY_PICKING.

Click Source Link

Document

An unfinished cherry-pick.

Usage

From source file:org.eclipse.emf.compare.egit.ui.internal.merge.ModelGitMergeEditorInput.java

License:Open Source License

private RevCommit getRightCommit(RevWalk revWalk, Repository repository) throws InvocationTargetException {
    try {//from   w  w w.  j  a v  a  2  s . c o m
        String target;
        if (repository.getRepositoryState().equals(RepositoryState.MERGING)) {
            target = Constants.MERGE_HEAD;
        } else if (repository.getRepositoryState().equals(RepositoryState.CHERRY_PICKING)) {
            target = Constants.CHERRY_PICK_HEAD;
        } else if (repository.getRepositoryState().equals(RepositoryState.REBASING_INTERACTIVE)) {
            target = readFile(repository.getDirectory(),
                    RebaseCommand.REBASE_MERGE + File.separatorChar + RebaseCommand.STOPPED_SHA);
        } else {
            target = Constants.ORIG_HEAD;
        }
        ObjectId mergeHead = repository.resolve(target);
        if (mergeHead == null) {
            throw new IOException(NLS.bind(UIText.ValidationUtils_CanNotResolveRefMessage, target));
        }
        return revWalk.parseCommit(mergeHead);
    } catch (IOException e) {
        throw new InvocationTargetException(e);
    }
}