2011-10-31 19 views
8

Tengo algunas dificultades con un cliente de git escrito en java. Estoy usando la biblioteca jGit para conectarme a través de ssh en el servidor git. El problema es que no sé cómo especificar la ruta a la clave privada y la frase de contraseña para la misma. No pude encontrar ningún ejemplo en la documentación de jGit sobre las funciones a las que debo llamar. Según lo que leí, la biblioteca jGit está utilizando JSch para conectarse al servidor mediante ssh y JSch admite claves privadas y frases de contraseña. ¿Alguien tiene alguna experiencia con esto o tiene algún código de trabajo?Java git client usando jgit

Gracias

Respuesta

7

no me ha consumido alguna vez jGit, sino de mirar el Javadocs (que aparentemente no están en línea navegable, but can be downloaded) que necesita para configurar un SshSessionFactory (es decir, crear una subclase de JSchConfigSessionFactory y anulación su método configure).

El objeto JSch soporta claves privadas con sus addIdentity métodos, y las frases de contraseña se puede dar con UserInfo objetos a cada JSch individuo Session.

(exención de responsabilidad: La JSch Javadoc fue escrito por mí.)

+0

Eres un genio! Muchas gracias funcionó a las mil maravillas. – azertys

+0

@azertys sería útil si pudieras compartir más información, cómo te funcionó. Todavía estoy luchando para lograr esto. Recibo errores: com.jcraft.jsch.JSchException: autenticación falla \t en com.jcraft.jsch.Session.connect (Session.java:519) \t en org.eclipse.jgit.transport.JschConfigSessionFactory.getSession (JschConfigSessionFactory. java: 117) – mohanjot

+0

Entiendo que han pasado cerca de 6 años, pero cualquier ayuda sobre esto sería increíble. – mohanjot