Проблемы аутентификации / связи с использованием SSH с libgit2sharp

Возникли проблемы с использованием libgit2sharp для извлечения / изменения изменений в удаленном репозитории с использованием аутентификации SSH. Этот удаленный репозиторий размещен в GitLab.

Вот код, который я использую:

using (var repo = new Repository(repoDirectory))
{
    var remote = repo.Network.Remotes["origin"];
    var options = new PushOptions
    {
        CredentialsProvider = (url, user, cred) =>
        {
            var credentials = new SshUserKeyCredentials()
            {
                PrivateKey = @"c:\users\<username>\.ssh\id_rsa",
                PublicKey  = @"c:\users\<username>\.ssh\id_rsa.pub",
                Passphrase = string.Empty,
                Username   = "git"
            };
            return credentials;
        }
    };
    repo.Network.Push(remote, @"refs/heads/master", options);
}

Я установил точку останова внутри делегата CredentialsProvider, и она не выполняется. Я получаю сообщение об ошибке:

"Не удалось запустить сеанс SSH: невозможно обменяться ключами шифрования"

У кого-нибудь есть идеи, почему я получаю это сообщение? Я полностью потерян здесь.

LibGit2Sharp v0.25.2, LibGit2Sharp-SSH v1.0.22

0 ответов

Другие вопросы по тегам