2015-10-05 3 views
0

Я пытаюсь заставить Дженкинса получить подмодули репозитория, но я не могу заставить его работать. Я искал в Интернете решение, но большинство проблем там вокруг аутентификации, что не является проблемой в этом случае. Из того, что я смог собрать из сообщения об ошибке, проблема, похоже, связана с тем, как плагин git-client обрабатывает репоны из инструментов командной строки.Невозможно получить git-подмодуль в jenkins с плагином git-client

Как мы установили Git для Windows версии 2.6.0, а плагин Jenkins Git-client официально поддерживает версию 2.5.0, я также попытался удалить версию 2.6.0 и установить версию 2.5.0, но это не сделало разница.

У кого-нибудь есть опыт работы с этой проблемой или возможное решение? Ошибка:

FATAL: Command "c:\Program Files\Git\bin\git.exe submodule update" returned status code 1: 
stdout: 
stderr: Cloning into 'mysubmodule'... 
error: cannot spawn echo : No such file or directory 
bash: /dev/tty: No such device or address 
error: failed to execute prompt script (exit code 1) 
fatal: could not read Username for 'http://somerepo': No error 
Clone of 'http://somerepo/scm/bf/mysubmodule.git' into submodule path 'mysubmodule' failed 

ответ

1

я испытал ту же самую ошибку, с тем же версией Git и Дженкинс G-клиентом плагина. Похоже, что это может быть комбинация ошибки и неправильной конфигурации подмодуля (ов) в файле .gitmodules основного репозитория. И сообщение об ошибке определенно не так полезно, как могло бы быть!

В моем случае файл .gitmodules в основном репозитории содержал абсолютный путь к субмодулю. Это привело к тому, что Дженкинс не смог правильно аутентифицировать подмодуль. Изменение пути подмодуля относительно (../mysub.git) исправлено для меня.

Это помогло мне довольно много: https://issues.jenkins-ci.org/browse/JENKINS-31244

Я надеюсь, вы найдете это полезным.

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