Я пытаюсь клонировать репо для моего компьютера, используя следующий код, используя Libgit2sharp-ssh.nativebinari (v 1.0.15) и Libgit2sharp-ssh-updated-libssh (v 1.0.25) < Br />
string repoURL = "ssh://git@github.com/MyUser/MyRepo.git";
string prm_localpath = @"D:\Github-Repositories\MyRepo"; // Replace with your desired
local path
string privateKeyPath = @"C:/Users/MyUser/.ssh/id_rsa"; // Replace with your private
key path
string publicKeyPath = @"C:/Users/MyUser/.ssh/id_rsa.pub"; // Usually, the public key
has .pub extension
string passphrase = string.Empty; // If your key has a passphrase, enter it here
//git clone
try
{
var sshKey = new SshUserKeyCredentials
{
Username = "git",
PrivateKey = privateKeyPath,
PublicKey = publicKeyPath,
Passphrase = passphrase
};
Repository.Clone(repoURL, prm_localpath, new CloneOptions
{
CredentialsProvider = (_url, _user, _cred) => sshKey
});
return "Cloned successfully";
}
catch (LibGit2SharpException ex)
{
return ex.Message;
}
catch (Exception ex)
{
return ex.Message;
}
< /code>
И я получаю «Не удалось запустить сеанс SSH: невозможно обменивать клавиши шифрования»
из командной строки:
$ ssh -T git@github.com< /code>
Привет myuser! Вы успешно аутентифицировали, но GitHub не предоставляет доступ к оболочке.
он работает нормально, если я сделаю это от Windows Explorer, «git_clone», используя Tortoisegit, он работает со следующими параметрами: < /p>
url = ssh: //git@github.com/myuser/myrepo.git
< /blockquote>
Directory = d: \ github-repositories \ myrepo < /p>
< /blockquote> загрузить ключ для загрузки = c: \ users \ myuser.ssh \ id_rsa.ppk < /p>
< /blockquote>
Также, если я сделаю это из командной строки: < /p>
`git clone git@github.com/MyUser/MyRepo.git D:\Github-Repositories\MyRepo`
Я пытаюсь клонировать репо для моего компьютера, используя следующий код, используя Libgit2sharp-ssh.nativebinari (v 1.0.15) и Libgit2sharp-ssh-updated-libssh (v 1.0.25) < Br />[code]string repoURL = "ssh://git@github.com/MyUser/MyRepo.git"; string prm_localpath = @"D:\Github-Repositories\MyRepo"; // Replace with your desired local path string privateKeyPath = @"C:/Users/MyUser/.ssh/id_rsa"; // Replace with your private key path string publicKeyPath = @"C:/Users/MyUser/.ssh/id_rsa.pub"; // Usually, the public key has .pub extension string passphrase = string.Empty; // If your key has a passphrase, enter it here //git clone try {
var sshKey = new SshUserKeyCredentials { Username = "git", PrivateKey = privateKeyPath, PublicKey = publicKeyPath, Passphrase = passphrase };
Repository.Clone(repoURL, prm_localpath, new CloneOptions {
} catch (LibGit2SharpException ex) { return ex.Message; } catch (Exception ex) { return ex.Message; } < /code> И я получаю «Не удалось запустить сеанс SSH: невозможно обменивать клавиши шифрования» из командной строки: $ ssh -T git@github.com< /code> Привет myuser! Вы успешно аутентифицировали, но GitHub не предоставляет доступ к оболочке. он работает нормально, если я сделаю это от Windows Explorer, «git_clone», используя Tortoisegit, он работает со следующими параметрами: < /p>