我在哈德森创建了自由式软件项目。
我想克隆一个公共Git存储库:git://github.com/bret/watir.git
构建失败,并显示错误消息:
Started by user anonymous
Checkout:workspace / C:\Documents and Settings\Administrator\.hudson\jobs\watir\workspace - hudson.remoting.LocalChannel@1a1f370
Last Build : #4
Checkout:workspace / C:\Documents and Settings\Administrator\.hudson\jobs\watir\workspace - hudson.remoting.LocalChannel@1a1f370
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)
我认为问题不在文件夹权限中,因为我有另一个Hudson作业(使用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.
据我所知,Hudson使用相同的Git可执行文件或相同版本的命令行。
命令行:
C:\>git version
git version 1.6.3.2.1299.gee46c
哈德森:
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 plugin remote windows slave clone)相关,并且它说问题是Git没有在路径中。但在那种情况下,git version
不会从Hudson运行,对吧?
环境:
答案 0 :(得分:8)
看起来hudson git plugin remote windows slave clone帖子是对的。当我转到Git > Git executable
部分的There's no such executable git in PATH
时,会出现错误C:\Program Files\Git\bin
。 (如果显示页面后Hudson显示错误需要几秒钟。)将{{1}}添加到路径并重新启动Hudson解决了问题。
答案 1 :(得分:1)
值得注意的是,如果克隆过程本身存在问题,您也会看到此问题。我有一个问题,我的一个盒子在一个大型存储库的初始克隆中失败了5次,并且哈德森不断抛出这个错误。验证这一问题的好方法是问题,并不是Hudson无法找到git可执行文件,而是手动将存储库克隆到Hudson工作区,然后运行Hudson构建:如果正确配置Hudson,构建将成功并且报告说没有变化。
答案 2 :(得分:0)
我需要尝试使用ssh git@github.company.co.uk:organisation/repo.git
网址而不是https https://github.company.co.uk/organisation/repo.git
答案 3 :(得分:-1)
Git插件0.7.3与windows绝对路径一起使用时会出现一些问题。
尝试使用相对路径。