Ошибка клонирования Hudson git
Я создал бесплатный проект программного обеспечения в Гудзоне.
Я хочу клонировать общедоступный репозиторий Git: git://github.com/bret/watir.git
Сбой сборки с сообщением об ошибке:
Started by user anonymous
Checkout:workspace / C:\Documents and Settings\Administrator\.hudson\jobs\watir\workspace - [email protected]
Last Build : #4
Checkout:workspace / C:\Documents and Settings\Administrator\.hudson\jobs\watir\workspace - [email protected]
Cloning the remote Git repository
Cloning repository origin
$ git clone -o origin git://github.com/bret/watir.git "C:\Documents and Settings\Administrator\.hudson\jobs\watir\workspace"
Trying next repository
ERROR: Could not clone from a repository
FATAL: Could not clone
hudson.plugins.git.GitException: Could not clone
at hudson.plugins.git.GitSCM$2.invoke(GitSCM.java:400)
at hudson.plugins.git.GitSCM$2.invoke(GitSCM.java:358)
at hudson.FilePath.act(FilePath.java:676)
at hudson.FilePath.act(FilePath.java:660)
at hudson.plugins.git.GitSCM.checkout(GitSCM.java:358)
at hudson.model.AbstractProject.checkout(AbstractProject.java:833)
at hudson.model.AbstractBuild$AbstractRunner.checkout(AbstractBuild.java:314)
at hudson.model.AbstractBuild$AbstractRunner.run(AbstractBuild.java:266)
at hudson.model.Run.run(Run.java:948)
at hudson.model.Build.run(Build.java:112)
at hudson.model.ResourceController.execute(ResourceController.java:93)
at hudson.model.Executor.run(Executor.java:118)
Я не думаю, что проблема связана с разрешениями папки, потому что у меня есть другое задание Хадсона (с репозиторием SVN), которое отлично работает.
Я попытался клонировать репозиторий в .hudson\jobs\watir\workspace из командной строки, и он отлично работает:
C:\>git clone -o origin git://github.com/bret/watir.git "C:\Documents and Settings\Administrator\.hudson\jobs\watir\workspace"
Initialized empty Git repository in C:/Documents and Settings/Administrator/.hudson/jobs/watir/workspace/.git/
remote: Counting objects: 15203, done.
essing objects: 100% (5307/5307), done.
remote: Total 15203 (delta 10052), reused 14532 (delta 9565)
Receiving objects: 100% (15203/15203), 7.88 MiB | 144 KiB/s, done.
Resolving deltas: 100% (10052/10052), done.
Насколько я могу судить, Хадсон использовал либо тот же исполняемый файл Git, либо ту же версию, что и в командной строке.
Командная строка:
C:\>git version
git version 1.6.3.2.1299.gee46c
Hudson:
Started by user anonymous
[workspace] $ cmd /c call C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\hudson9062544454093366628.bat
C:\Documents and Settings\Administrator\.hudson\jobs\watir\workspace>git version
git version 1.6.3.2.1299.gee46c
Finished: SUCCESS
Поиск в Интернете Я нашел только одну страницу, связанную с моим сообщением об ошибке (hudson Git плагин удаленных окон slave clone), и он говорит, что проблема Git не находится в пути. Но в этом случае git version
не будет запускаться из Хадсона, не так ли?
Окружающая среда:
- Microsoft Windows Server 2003 R2, стандартная версия, с пакетом обновления 2 (SP2)
- java 1.6.0_14
- Hudson 1.316
- Плагин Hudson Git 0.7.3
- git 1.6.3.2.1299.gee46c
Ответы
Ответ 1
Похоже, hudson git плагин удаленных окон slave clone был прав. Когда я перехожу в Manage Hudson > Configure System, в разделе Git > Git executable
появляется ошибка There no such executable git in PATH
. (Если Hudson отображает сообщение об ошибке после того, как страница отобразится, Hubson несколько секунд). Добавление C:\Program Files\Git\bin
в путь и перезапуск Hudson решило проблему.
Ответ 2
Стоит отметить, что если сам процесс клонирования имеет проблему, вы также увидите эту проблему. У меня возникли проблемы с одним из моих ящиков, которые 4 из 5 раз не выполнялись в исходном клоне большого хранилища, и Хадсон продолжал метать эту ошибку. Хорошим способом проверить это является проблема, и Хадсон не может найти исполняемый файл git, чтобы клонировать репозиторий в рабочую область Hudson вручную, а затем запускать сборку Hudson: если Хадсон настроен правильно, сборка будет преуспеть и сообщить, что изменений нет.
Ответ 3
Мне нужно было попробовать с помощью ssh [email protected]:organisation/repo.git
url вместо https https://github.company.co.uk/organisation/repo.git
Ответ 4
Git плагин 0.7.3 имеет некоторые проблемы при использовании с абсолютными путями окон.
Попробуйте вместо этого использовать относительные пути.