我想通过ssh用java克隆一个git项目。我有一个git-shell用户的用户名和密码作为凭据。我可以使用以下命令在终端中克隆项目,没有问题。 (当然,它要求输入密码第一)用ssh用用户名和密码克隆git仓库
git clone [email protected]:/path/Example.git
然而,当我使用JGIT API
File localPath = new File("TempProject");
Git.cloneRepository()
.setURI("ssh://HOST/path/example.git")
.setDirectory(localPath)
.setCredentialsProvider(new UsernamePasswordCredentialsProvider("***", "***"))
.call();
试试下面的代码我
Exception in thread "main" org.eclipse.jgit.api.errors.TransportException: ssh://HOST/path/example.git: Auth fail
我应该怎么办?有任何想法吗? (我正在使用OSX 10.9.4和JDK 1.8)
如果您想使用用户名和密码作为凭证提供程序,那么您可能会使用'http'作为git repo URI。 – 2014-09-20 19:08:23
用户名和密码用于Ubuntu服务器上的ssh用户。 – 2014-09-20 19:33:03
也许与jgit.transport.SshConfigSessionFactory有关的内容??? – 2014-09-20 19:36:02