哈德森git克隆错误

时间:2009-07-24 12:17:56

标签: git hudson clone

我在哈德森创建了自由式软件项目。

我想克隆一个公共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运行,对吧?

环境:

  • Microsoft Windows Server 2003 R2,标准版,Service Pack 2
  • java 1.6.0_14
  • Hudson 1.316
  • Hudson GIT插件0.7.3
  • git 1.6.3.2.1299.gee46c

4 个答案:

答案 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绝对路径一起使用时会出现一些问题。

尝试使用相对路径。