Giter8: Error de autenticación de GitHub en un repositorio privado

Creado en 4 ene. 2013  ·  20Comentarios  ·  Fuente: foundweekends/giter8

Usando 0.5.3 recibo un error de autenticación de GitHub. Ya ejecuté cs --auth user:pass y veo la aplicación con acceso privado al repositorio en la configuración de la cuenta en GitHub. Todavía falla con el siguiente error.

taylor:tmp taylor$ g8 stackmob/service-template
org.eclipse.jgit.api.errors.JGitInternalException: Exception caught during execution of fetch command
    at org.eclipse.jgit.api.FetchCommand.call(FetchCommand.java:138)
    at org.eclipse.jgit.api.CloneCommand.fetch(CloneCommand.java:175)
    at org.eclipse.jgit.api.CloneCommand.call(CloneCommand.java:121)
    at giter8.Apply$class.clone(apply.scala:38)
    at giter8.Giter8.clone(giter8.scala:3)
    at giter8.Apply$class.inspect(apply.scala:21)
    at giter8.Giter8.inspect(giter8.scala:3)
    at giter8.Giter8.ghInspect(giter8.scala:56)
    at giter8.Giter8.run(giter8.scala:24)
    at giter8.Giter8.run(giter8.scala:12)
    at giter8.Giter8.run(giter8.scala:3)
    at xsbt.boot.Launch$.run(Launch.scala:54)
    at xsbt.boot.Launch$$anonfun$explicit$1.apply(Launch.scala:43)
    at xsbt.boot.Launch$.launch(Launch.scala:68)
    at xsbt.boot.Launch$.apply(Launch.scala:14)
    at xsbt.boot.Boot$.runImpl(Boot.scala:25)
    at xsbt.boot.Boot$.main(Boot.scala:15)
    at xsbt.boot.Boot.main(Boot.scala)
Caused by: org.eclipse.jgit.errors.TransportException: [email protected]:stackmob/service-template.g8.git: Auth fail
    at org.eclipse.jgit.transport.JschConfigSessionFactory.getSession(JschConfigSessionFactory.java:141)
    at org.eclipse.jgit.transport.SshTransport.getSession(SshTransport.java:121)
    at org.eclipse.jgit.transport.TransportGitSsh$SshFetchConnection.<init>(TransportGitSsh.java:248)
    at org.eclipse.jgit.transport.TransportGitSsh.openFetch(TransportGitSsh.java:147)
    at org.eclipse.jgit.transport.FetchProcess.executeImp(FetchProcess.java:127)
    at org.eclipse.jgit.transport.FetchProcess.execute(FetchProcess.java:113)
    at org.eclipse.jgit.transport.Transport.fetch(Transport.java:1062)
    at org.eclipse.jgit.api.FetchCommand.call(FetchCommand.java:129)
    ... 17 more
Caused by: com.jcraft.jsch.JSchException: Auth fail
    at com.jcraft.jsch.Session.connect(Session.java:461)
    at org.eclipse.jgit.transport.JschConfigSessionFactory.getSession(JschConfigSessionFactory.java:116)
    ... 24 more
Error during sbt execution: org.eclipse.jgit.api.errors.JGitInternalException: Exception caught during execution of fetch command

Comentario más útil

El acceso SSH a un repositorio privado aún no funciona con g8 0.7.1, ¿es un problema conocido? Estoy tratando de acceder a una plantilla g8 en un repositorio privado de github y obtengo el mismo error que se publicó anteriormente

Todos 20 comentarios

Me acabo de dar cuenta de que abrí un problema similar hace 3 meses: https://github.com/n8han/giter8/issues/82

En giter8 0.5.3, su nombre de usuario y contraseña de github ya no se utilizan para el acceso a repositorios privados. En cambio, jgit está usando ssh para intentar obtener el repositorio privado. En la mayoría de las configuraciones, esto funciona sin que tenga que hacer nada.

Supongo que puede clonar el repositorio en cuestión usando git simple, ¿inició sesión como el mismo usuario?

Correcto, puedo clonar y presionar bien. Quizás el hecho de que el repositorio sea un repositorio privado para nuestra organización en lugar de un usuario individual marca la diferencia.

También estoy experimentando este problema con las plantillas en un repositorio público de github.

Yo también

Sin embargo, sospecho que es algún tipo de problema de configuración en mi sistema. Funciona en la computadora de mi colega, pero no en la mía.

Sin embargo, puedo clonar la plantilla g8 sin problemas

Causado por: org.eclipse.jgit.errors.TransportException: Auth Fail

+1 para este problema. ¿Alguna solución?

Mismo problema (repositorios públicos). Mac OS X. León de montaña. Usando ssh + git bien en cualquier otro lugar.

Tengo el mismo error en 'g8 scalatra / scalatra-sbt', que es un repositorio público. También en MacOSX, Mountain Lion.

Mi solución es clonar el repositorio localmente y luego usar la ruta del archivo con g8. Por ejemplo, archivo g8

El mismo problema para mí al ejecutar g8 scalatra/scalatra-sbt .
Sin embargo, no tuve ningún problema al usar la solución @flurdy .

He tenido el mismo problema con g8 0.5.3.
Estoy en Mac OS X 10.8.5 e instalé giter8 a través de brew.

Aquí está el resultado del error:

$ g8 typesafehub/play-scala
org.eclipse.jgit.api.errors.JGitInternalException: Exception caught during execution of fetch command
    at org.eclipse.jgit.api.FetchCommand.call(FetchCommand.java:138)
    at org.eclipse.jgit.api.CloneCommand.fetch(CloneCommand.java:175)
    at org.eclipse.jgit.api.CloneCommand.call(CloneCommand.java:121)
    at giter8.Apply$class.clone(apply.scala:38)
    at giter8.Giter8.clone(giter8.scala:3)
    at giter8.Apply$class.inspect(apply.scala:21)
    at giter8.Giter8.inspect(giter8.scala:3)
    at giter8.Giter8.ghInspect(giter8.scala:56)
    at giter8.Giter8.run(giter8.scala:24)
    at giter8.Giter8.run(giter8.scala:12)
    at giter8.Giter8.run(giter8.scala:3)
    at xsbt.boot.Launch$$anonfun$run$1.apply(Launch.scala:57)
    at xsbt.boot.Launch$.withContextLoader(Launch.scala:77)
    at xsbt.boot.Launch$.run(Launch.scala:57)
    at xsbt.boot.Launch$$anonfun$explicit$1.apply(Launch.scala:45)
    at xsbt.boot.Launch$.launch(Launch.scala:65)
    at xsbt.boot.Launch$.apply(Launch.scala:16)
    at xsbt.boot.Boot$.runImpl(Boot.scala:32)
    at xsbt.boot.Boot$.main(Boot.scala:21)
    at xsbt.boot.Boot.main(Boot.scala)
Caused by: org.eclipse.jgit.errors.TransportException: [email protected]:typesafehub/play-scala.g8.git: Auth fail
    at org.eclipse.jgit.transport.JschConfigSessionFactory.getSession(JschConfigSessionFactory.java:141)
    at org.eclipse.jgit.transport.SshTransport.getSession(SshTransport.java:121)
    at org.eclipse.jgit.transport.TransportGitSsh$SshFetchConnection.<init>(TransportGitSsh.java:248)
    at org.eclipse.jgit.transport.TransportGitSsh.openFetch(TransportGitSsh.java:147)
    at org.eclipse.jgit.transport.FetchProcess.executeImp(FetchProcess.java:127)
    at org.eclipse.jgit.transport.FetchProcess.execute(FetchProcess.java:113)
    at org.eclipse.jgit.transport.Transport.fetch(Transport.java:1062)
    at org.eclipse.jgit.api.FetchCommand.call(FetchCommand.java:129)
    ... 19 more
Caused by: com.jcraft.jsch.JSchException: Auth fail
    at com.jcraft.jsch.Session.connect(Session.java:461)
    at org.eclipse.jgit.transport.JschConfigSessionFactory.getSession(JschConfigSessionFactory.java:116)
    ... 26 more
Error during sbt execution: org.eclipse.jgit.api.errors.JGitInternalException: Exception caught during execution of fetch command

Inicialmente pensé que este problema fue causado por una actualización reciente de git a la versión 1.8.4, así que volví a 1.7.10.2 (la versión instalada en mi máquina por defecto). Tuve el mismo problema, así que me pregunté si esto era el resultado de que mi red corporativa bloqueara el git:// . Intenté proporcionar explícitamente el repositorio completo y recibí un error que esperaba para el protocolo bloqueado:

$ g8 git://www.github.com/typesafehub/play-scala.git
org.eclipse.jgit.api.errors.JGitInternalException: Exception caught during execution of fetch command
    at org.eclipse.jgit.api.FetchCommand.call(FetchCommand.java:138)
    at org.eclipse.jgit.api.CloneCommand.fetch(CloneCommand.java:175)
    at org.eclipse.jgit.api.CloneCommand.call(CloneCommand.java:121)
    at giter8.Apply$class.clone(apply.scala:38)
    at giter8.Giter8.clone(giter8.scala:3)
    at giter8.Apply$class.inspect(apply.scala:21)
    at giter8.Giter8.inspect(giter8.scala:3)
    at giter8.Giter8.run(giter8.scala:28)
    at giter8.Giter8.run(giter8.scala:12)
    at giter8.Giter8.run(giter8.scala:3)
    at xsbt.boot.Launch$$anonfun$run$1.apply(Launch.scala:57)
    at xsbt.boot.Launch$.withContextLoader(Launch.scala:77)
    at xsbt.boot.Launch$.run(Launch.scala:57)
    at xsbt.boot.Launch$$anonfun$explicit$1.apply(Launch.scala:45)
    at xsbt.boot.Launch$.launch(Launch.scala:65)
    at xsbt.boot.Launch$.apply(Launch.scala:16)
    at xsbt.boot.Boot$.runImpl(Boot.scala:32)
    at xsbt.boot.Boot$.main(Boot.scala:21)
    at xsbt.boot.Boot.main(Boot.scala)
Caused by: org.eclipse.jgit.errors.TransportException: git://www.github.com/typesafehub/play-scala.git: Connection refused
    at org.eclipse.jgit.transport.TransportGitAnon.openConnection(TransportGitAnon.java:141)
    at org.eclipse.jgit.transport.TransportGitAnon$TcpFetchConnection.<init>(TransportGitAnon.java:170)
    at org.eclipse.jgit.transport.TransportGitAnon.openFetch(TransportGitAnon.java:111)
    at org.eclipse.jgit.transport.FetchProcess.executeImp(FetchProcess.java:127)
    at org.eclipse.jgit.transport.FetchProcess.execute(FetchProcess.java:113)
    at org.eclipse.jgit.transport.Transport.fetch(Transport.java:1062)
    at org.eclipse.jgit.api.FetchCommand.call(FetchCommand.java:129)
    ... 18 more
Error during sbt execution: org.eclipse.jgit.api.errors.JGitInternalException: Exception caught during execution of fetch command

Intenté con el protocolo https:// del repositorio (con y sin el sufijo .git ):

$ g8 https://github.com/typesafehub/play-scala

giter8 0.5.3
Usage: g8 [TEMPLATE] [OPTION]...
Apply specified template.

OPTIONS
    -b, --branch
        Resolves a template within a given branch
    --paramname=paramvalue
        Set given parameter value and bypass interaction.


Apply template and interactively fulfill parameters.
    g8 n8han/giter8

Or
    g8 git://github.com/n8han/giter8.git

Apply template from a remote branch
    g8 n8han/giter8 -b some-branch

Apply template from a local repo
    g8 file://path/to/the/repo

Apply given name parameter and use defaults for all others.
    g8 n8han/giter8 --name=template-test

Aparentemente, el transporte https está roto en 0.5.3 en brew. Volví a la versión anterior y todo funciona. Así es como retrocedí:

$ cd /usr/local/Library
$ # brew versions giter8
$ git checkout 3c5ca25 /usr/local/Library/Formula/giter8.rb
$ brew unlink giter8 && brew install giter8

Ahora, g8 typesafehub/play-scala funciona como se esperaba.

La solución alternativa de flurdy funciona muy bien.

Warning: brew-versions is unsupported and will be removed soon.

Además, parece que 0.6.2 todavía se ve afectado por este problema.

El uso de acceso basado en ssh con una clave desprotegida funciona con 0.6.2.

Pero uno no quiere claves desprotegidas ...

Parece que se solucionará en 0.6.7: de3b0840b959aa8436a235d2f1b1044a70680f9d
Sin embargo, todavía no lo probé.

Como nota al margen, la gente de Homebrew tiene dificultades para empaquetar giter8, consulte la discusión en https://github.com/Homebrew/homebrew/pull/29614

Debería arreglarse en # 141.

El acceso SSH a un repositorio privado aún no funciona con g8 0.7.1, ¿es un problema conocido? Estoy tratando de acceder a una plantilla g8 en un repositorio privado de github y obtengo el mismo error que se publicó anteriormente

Recibo este error si mi clave ssh no está almacenada en ~ / .ssh / id_rsa. Parece que jgit solo busca algunos nombres de archivo como claves de host ssh válidas, y no verifica el agente ssh:
https://github.com/eclipse/jgit/blob/master/org.eclipse.jgit/src/org/eclipse/jgit/transport/JschConfigSessionFactory.java#L323
.

Obteniendo el mismo error al intentar clonar un repositorio privado localmente con código Java. git clone funciona bien pero dentro del error de excepción de Java. Probé todas las variaciones de URI con .git, sin con: 22, con el nombre de la organización en movimiento alrededor del mismo error

org.eclipse.jgit.api.errors.TransportException: ssh: //github.com/Bisk/skyway-salesforce-dev :
en org.eclipse.jgit.api.FetchCommand.call (FetchCommand.java:224)
en org.eclipse.jgit.api.CloneCommand.fetch (CloneCommand.java:216)
en org.eclipse.jgit.api.CloneCommand.call (CloneCommand.java:137)
en com.force.deploy.jgit.CloneRemoteRepositoryWithAuthentication.cloneRepo (CloneRemoteRepositoryWithAuthentication.java:76)
en com.force.deploy.start.StartController.git (StartController.java:91)
en sun.reflect.NativeMethodAccessorImpl.invoke0 (método nativo)
en sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62)
en sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
en java.lang.reflect.Method.invoke (Method.java:498)
en org.springframework.web.method.support.InvocableHandlerMethod.doInvoke (InvocableHandlerMethod.java:205)
en org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest (InvocableHandlerMethod.java:133)
en org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle (ServletInvocableHandlerMethod.java:97)
en org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod (RequestMappingHandlerAdapter.java:827)
en org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal (RequestMappingHandlerAdapter.java:738)
en org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle (AbstractHandlerMethodAdapter.java:85)
en org.springframework.web.servlet.DispatcherServlet.doDispatch (DispatcherServlet.java:963)
en org.springframework.web.servlet.DispatcherServlet.doService (DispatcherServlet.java:897)
en org.springframework.web.servlet.FrameworkServlet.processRequest (FrameworkServlet.java:970)
en org.springframework.web.servlet.FrameworkServlet.doGet (FrameworkServlet.java:861)
en javax.servlet.http.HttpServlet.service (HttpServlet.java:635)
en org.springframework.web.servlet.FrameworkServlet.service (FrameworkServlet.java:846)
en javax.servlet.http.HttpServlet.service (HttpServlet.java:742)
en org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:231)
en org.apache.catalina.core.ApplicationFilterChain.doFilter (ApplicationFilterChain.java:166)
en org.apache.tomcat.websocket.server.WsFilter.doFilter (WsFilter.java:52)
en org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:193)
en org.apache.catalina.core.ApplicationFilterChain.doFilter (ApplicationFilterChain.java:166)
en org.springframework.web.filter.RequestContextFilter.doFilterInternal (RequestContextFilter.java:99)
en org.springframework.web.filter.OncePerRequestFilter.doFilter (OncePerRequestFilter.java:107)
en org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:193)
en org.apache.catalina.core.ApplicationFilterChain.doFilter (ApplicationFilterChain.java:166)
en org.springframework.web.filter.HttpPutFormContentFilter.doFilterInternal (HttpPutFormContentFilter.java:105)
en org.springframework.web.filter.OncePerRequestFilter.doFilter (OncePerRequestFilter.java:107)
en org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:193)
en org.apache.catalina.core.ApplicationFilterChain.doFilter (ApplicationFilterChain.java:166)
en org.springframework.web.filter.HiddenHttpMethodFilter.doFilterInternal (HiddenHttpMethodFilter.java:81)
en org.springframework.web.filter.OncePerRequestFilter.doFilter (OncePerRequestFilter.java:107)
en org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:193)
en org.apache.catalina.core.ApplicationFilterChain.doFilter (ApplicationFilterChain.java:166)
en org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal (CharacterEncodingFilter.java:197)
en org.springframework.web.filter.OncePerRequestFilter.doFilter (OncePerRequestFilter.java:107)
en org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:193)
en org.apache.catalina.core.ApplicationFilterChain.doFilter (ApplicationFilterChain.java:166)
en org.apache.catalina.core.StandardWrapperValve.invoke (StandardWrapperValve.java:198)
en org.apache.catalina.core.StandardContextValve.invoke (StandardContextValve.java:96)
en org.apache.catalina.authenticator.AuthenticatorBase.invoke (AuthenticatorBase.java:478)
en org.apache.catalina.core.StandardHostValve.invoke (StandardHostValve.java:140)
en org.apache.catalina.valves.ErrorReportValve.invoke (ErrorReportValve.java:80)
en org.apache.catalina.core.StandardEngineValve.invoke (StandardEngineValve.java:87)
en org.apache.catalina.connector.CoyoteAdapter.service (CoyoteAdapter.java:342)
en org.apache.coyote.http11.Http11Processor.service (Http11Processor.java:799)
en org.apache.coyote.AbstractProcessorLight.process (AbstractProcessorLight.java:66)
en org.apache.coyote.AbstractProtocol $ ConnectionHandler.process (AbstractProtocol.java:861)
en org.apache.tomcat.util.net.NioEndpoint $ SocketProcessor.doRun (NioEndpoint.java:1455)
en org.apache.tomcat.util.net.SocketProcessorBase.run (SocketProcessorBase.java:49)
en java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1142)
en java.util.concurrent.ThreadPoolExecutor $ Worker.run (ThreadPoolExecutor.java:617)
en org.apache.tomcat.util.threads.TaskThread $ WrappingRunnable.run (TaskThread.java:61)
en java.lang.Thread.run (Thread.java:745)
Causado por: org.eclipse.jgit.errors.TransportException: ssh: //github.com/Bisk/skyway-salesforce-dev : Auth fail
en org.eclipse.jgit.transport.JschConfigSessionFactory.getSession (JschConfigSessionFactory.java:160)
en org.eclipse.jgit.transport.SshTransport.getSession (SshTransport.java:137)
en org.eclipse.jgit.transport.TransportGitSsh $ SshFetchConnection.(TransportGitSsh.java:274)
en org.eclipse.jgit.transport.TransportGitSsh.openFetch (TransportGitSsh.java:169)
en org.eclipse.jgit.transport.FetchProcess.executeImp (FetchProcess.java:136)
en org.eclipse.jgit.transport.FetchProcess.execute (FetchProcess.java:122)
en org.eclipse.jgit.transport.Transport.fetch (Transport.java:1236)
en org.eclipse.jgit.api.FetchCommand.call (FetchCommand.java:213)
... 58 más
Causado por: com.jcraft.jsch.JSchException: Auth fail
en com.jcraft.jsch.Session.connect (Session.java:519)
en org.eclipse.jgit.transport.JschConfigSessionFactory.getSession (JschConfigSessionFactory.java:117)
... 65 más

Problema resuelto mediante el uso de https con un usuario / contraseña de proveedor de credenciales diferente en lugar de SSH. Usando este código en su lugar
CloneCommand cloneCommand = Git.cloneRepository ();
cloneCommand.setURI ("https://example.com/repo.git");
cloneCommand.setCredentialsProvider (new UsernamePasswordCredentialsProvider ("usuario", "contraseña"));

Como se documenta en http://www.codeaffine.com/2014/12/09/jgit-authentication/

+1 todavía no funciona a pesar de que la clave es ~ / .ssh / id_rsa

¿Fue útil esta página
0 / 5 - 0 calificaciones

Temas relacionados

laur89 picture laur89  ·  9Comentarios

sebastianvoss picture sebastianvoss  ·  3Comentarios

sebastiankirsch picture sebastiankirsch  ·  5Comentarios

etorreborre picture etorreborre  ·  23Comentarios

tarruda picture tarruda  ·  4Comentarios