【发布时间】:2010-07-29 14:39:31
【问题描述】:
环境:
- WinXP SP3
- Git:1.7.0.2.msysgit.0
- 哈德逊 1.367
- 具有 Gitosis 和 GitWeb 的本地网络上的 Git 服务器
我们正准备从 SVN 迁移到 Git,并且有很多使用 SVN 的工作版本。最初尝试构建 Hudson Git 时使用了 Git 插件。我开始构建,它将进入 git clone 阶段。正好 60k 的磁盘空间将被写入 .git 目录,然后 Hudson/Git 将冻结。 Hudson 只是坐在构建上等待永远。
我禁用了 Git 插件,而是通过 Hudson Execute Windows Batch Command 工具启动了一个 Python 脚本。当 .git 目录使用正好 60k 的磁盘空间时,它会运行并冻结。
我捕获了 Hudson 构建的批处理文件并在命令行上运行它并运行完成。
我的一个想法是作业在 stdout 或 stderr 上阻塞,所以我将两者都重定向到 NULL。不,仍然达到了 60k 的障碍。然后我尝试使用 -q 标志(安静)启动 git clone。还是不行。
哈德逊原木显示很少。这是一次运行的示例:Jul 28, 2010 5:07:56 PM hudson.model.Run run
INFO: 540UnitTesting-GitTest #32 aborted
java.lang.InterruptedException
at java.lang.ProcessImpl.waitFor(Native Method)
at hudson.Proc$LocalProc.join(Proc.java:222)
at hudson.Launcher$ProcStarter.join(Launcher.java:280)
at hudson.tasks.CommandInterpreter.perform(CommandInterpreter.java:83)
at hudson.tasks.CommandInterpreter.perform(CommandInterpreter.java:58)
at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:19)
at hudson.model.AbstractBuild$AbstractRunner.perform(AbstractBuild.java:601)
at hudson.model.Build$RunnerImpl.build(Build.java:174)
at hudson.model.Build$RunnerImpl.doRun(Build.java:138)
at hudson.model.AbstractBuild$AbstractRunner.run(AbstractBuild.java:416)
at hudson.model.Run.run(Run.java:1257)
at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46)
at hudson.model.ResourceController.execute(ResourceController.java:88)
at hudson.model.Executor.run(Executor.java:129)
我的下一步是将 Hudson 迁移到 Linux,尽管我宁愿在未来的某个时候这样做。 是否有人对如何在 Windows 上解决此问题(使用或不使用 Git 插件)有任何想法?
【问题讨论】: