if (node instanceof RefNode || node instanceof TagNode)
return new CheckoutCommand().execute(event);
if (node instanceof FileNode)
return new OpenInEditorCommand().execute(event);
if (node instanceof StashedCommitNode) {
RepositoryCommit repositoryCommit = new RepositoryCommit(
node.getRepository(),
((StashedCommitNode) node).getObject());
repositoryCommit.setStash(true);
CommitEditor.openQuiet(repositoryCommit);
}
return null;
}