Пусть удаленный репозиторий origin
имеет URL-адрес ssh. Итак, следующий код:
remote = Rugged::Remote.lookup(repo, "origin")
remote.connect(:fetch)
поднимает Rugged::SshError: Cannot set up SSH connection without credentials
.
Похоже, что rugged
поддерживает транспорт SSH, так как есть класс Rugged::Credentials::SshKey
и можно предоставить опцию :credentials
для Repository.clone_at
. Но я не вижу способа предоставить учетные данные для Remote#connect
в исходном коде. Я что-то упускаю?
И если можно подключиться через ssh, есть ли способ получить учетные данные от ssh-agent? Кажется, libgit2
может запросить ssh-agent.