【问题标题】:Integrating GIT into Hudson将 GIT 集成到 Hudson
【发布时间】:2011-01-01 22:09:46
【问题描述】:

我有一个 Hudson 项目设置,基本上是“存储库的 URL”= D:/Development

假设我在 /SomeFolder/SomeProject/SomeProject.sln 下有一个 .NET 解决方案,如何让 Hudson 监控 Git 中的 /SomeFolder/SomeProject 文件夹?我是 git 新手,所以我应该为每个项目都有一个新的 Git 存储库吗?我已经在 Hudson 中使用了 SVN,并且能够轻松完成上述操作,因此将不胜感激

问候,

安德鲁

【问题讨论】:

  • 我确实看到了...我的问题更像是,在 svn 中,我可以拥有包含多个解决方案/项目的子文件夹,而在 Hudson 中,我只能监控 1 个子文件夹的更改,但我似乎没有能够用 Git 做到这一点

标签: .net git hudson hudson-plugins


【解决方案1】:

我认为这种设置可能的唯一方法是使用父存储库,它将您要监视的每个存储库声明为 submodules

Hudson 可能需要进行调整才能在您当前的工作之前运行工作,以确保它在“git status”之前正确执行git submodule update(我还没有(我没有测试过这个配置,所以也许这一步是不必要的)。

【讨论】:

  • 你能告诉我你是如何为 Hudson 设置你的 git repo 的吗?我最终为每个解决方案设置了一个仓库,但想知道这是否是正确的做法......就像我说的,我是 git 新手,所以我只是想制定最佳实践,等
  • @andrewjboyd:直觉上,我会说每个解决方案一个 repo 听起来是对的(请参阅 *.com/questions/899373/…)。如果这些 repo 的关系不太密切(即,如果修改一个不涉及修改 all 其他),那么您可以将它们分组为父 repo 作为子模块。我不知道的是,当在作业配置中仅设置父 repo 时,Hudson 将如何检测所述子模块中的更改。
  • 这是我使用的,它确实可以处理它(在您选中“{something} submodule”复选框之后)