Giter8: GitHub Auth Fail на частном репо

Созданный на 4 янв. 2013  ·  20Комментарии  ·  Источник: foundweekends/giter8

Используя 0.5.3, я получаю ошибку аутентификации GitHub. Я уже запустил cs --auth user:pass и вижу приложение с доступом к частному репо в настройках учетной записи в GitHub. Он по-прежнему не работает с указанной ниже ошибкой.

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

Самый полезный комментарий

SSH-доступ к частному репо по-прежнему не работает с g8 0.7.1, это известная проблема? Я пытаюсь получить доступ к шаблону g8 в частном репозитории github и получаю ту же ошибку, что и опубликовано выше.

Все 20 Комментарий

Только что понял, что открыл аналогичную проблему 3 месяца назад: https://github.com/n8han/giter8/issues/82

В giter8 0.5.3 ваше имя пользователя и пароль github больше не используются для доступа к частному репо. Вместо этого jgit использует ssh, чтобы попытаться получить частное репо. В большинстве конфигураций это работает без каких-либо действий.

Я предполагаю, что вы можете клонировать рассматриваемый репозиторий, используя простой git, войдя в систему как тот же пользователь?

Правильно, я могу клонировать и нажимать на него нормально. Возможно, тот факт, что репо является частным репо для нашей организации, а не для отдельного пользователя, имеет значение.

Я также испытываю эту проблему с шаблонами в общедоступном репозитории github.

Я тоже

Я подозреваю, что это какая-то проблема с конфигурацией в моей системе. Он работает на компьютере моего коллеги, но не на моем.

Я могу клонировать шаблон g8 без проблем.

Вызвано: org.eclipse.jgit.errors.TransportException: Auth Fail

+1 за этот вопрос. Какие-нибудь обходные пути?

Та же проблема (публичные репозитории). Mac OS X. Горный лев. Использование ssh + git отлично везде.

У меня такая же ошибка на «g8 scalatra / scalatra-sbt», который является публичным репо. Также на MacOSX, Mountain Lion.

Мой обходной путь - клонировать репо локально, а затем использовать путь к файлу с помощью g8. Например, файл g8

Та же проблема для меня при запуске g8 scalatra/scalatra-sbt .
Однако у меня не было проблем с использованием обходного пути

Я столкнулся с той же проблемой с g8 0.5.3.
Я использую Mac OS X 10.8.5 и установил giter8 через brew.

Вот результат ошибки:

$ 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

Сначала я подумал, что эта проблема вызвана недавним обновлением git до версии 1.8.4, поэтому я откатился до 1.7.10.2 (версия, установленная на моем компьютере по умолчанию). У меня была такая же проблема, поэтому я подумал, не было ли это результатом блокировки моей корпоративной сети git:// . Я попытался явно предоставить полное репо и получил ошибку, которую ожидал от заблокированного протокола:

$ 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

Я пробовал использовать протокол репо https:// (с суффиксом .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

Судя по всему, https транспорт сломан в 0.5.3 на вареве. Откатился на предыдущую версию и все работает. Вот как откатился:

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

Теперь g8 typesafehub/play-scala работает должным образом.

Обходной путь flurdy отлично работает.

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

Более того, похоже, что 0.6.2 все еще подвержена этой проблеме.

Использование доступа по ssh с незащищенным ключом работает с 0.6.2.

Но незащищенные ключи не нужны ...

Похоже, это будет исправлено в версии 0.6.7: de3b0840b959aa8436a235d2f1b1044a70680f9d
Хотя еще не пробовал.

В качестве примечания: ребятам из Homebrew сложно упаковывать giter8, см. Обсуждение в https://github.com/Homebrew/homebrew/pull/29614

Должен быть исправлен в # 141.

SSH-доступ к частному репо по-прежнему не работает с g8 0.7.1, это известная проблема? Я пытаюсь получить доступ к шаблону g8 в частном репозитории github и получаю ту же ошибку, что и опубликовано выше.

Я получаю эту ошибку, если мой ключ ssh не хранится в ~ / .ssh / id_rsa. Кажется, что jgit ищет только несколько имен файлов как действительные ключи хоста ssh и не проверяет ssh-agent:
https://github.com/eclipse/jgit/blob/master/org.eclipse.jgit/src/org/eclipse/jgit/transport/JschConfigSessionFactory.java#L323
.

Получение той же ошибки при попытке клонировать частное репо локально с помощью кода Java. git clone работает нормально, но внутри ошибки исключения Java. Я пробовал все варианты URI с .git, без с: 22, с перемещением имени организации вокруг все той же ошибки

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

Проблема решена путем использования https с другим пользователем и паролем поставщика учетных данных вместо SSH. Вместо этого используйте этот код
CloneCommand cloneCommand = Git.cloneRepository ();
cloneCommand.setURI ("https://example.com/repo.git");
cloneCommand.setCredentialsProvider (новый UsernamePasswordCredentialsProvider («пользователь», «пароль»));

Как указано в документации

+1 по-прежнему не работает, несмотря на то, что ключ ~ / .ssh / id_rsa

Была ли эта страница полезной?
0 / 5 - 0 рейтинги

Смежные вопросы

sebastiankirsch picture sebastiankirsch  ·  5Комментарии

laur89 picture laur89  ·  9Комментарии

timnovis picture timnovis  ·  7Комментарии

tarruda picture tarruda  ·  4Комментарии

sebastianvoss picture sebastianvoss  ·  3Комментарии