Как получить RevCommit или ObjectId из строки идентификатора SHA1 с помощью JGit?

Этот вопрос противоположен этому вопросу:JGit, как я могу получить SHA1 от RevCommit?.

Если мне дается идентификатор SHA1 конкретного коммита в виде строки, как я могу получитьObjectId или связанныйRevCommit в JGit?

Вот возможный ответ, который перебирает всеRevCommits:

RevCommit findCommit(String SHAId)
{
    Iterable<RevCommit> commits = git_.log().call();    
    for (RevCommit commit: commits)
    {
        if (commit.getName().equals(SHAId))
            return commit;
    }    
    return null;
}

Есть ли что-нибудь лучше, чем эта реализация выше?

Ответы на вопрос(2)

Ваш ответ на вопрос