【问题标题】:How do i exclude a folder from SVN Repository Checkout?如何从 SVN Repository Checkout 中排除文件夹?
【发布时间】:2011-12-26 19:44:00
【问题描述】:

如何排除 Jenkins CI 以从 SVN 结帐中排除文件夹?

我尝试了“排除区域”但不工作,我这样做是否正确?

我在 Jenkins 上的设置截图:

【问题讨论】:

  • 在您的给定链接上禁止 403
  • 单击链接时出现 403 错误...您是否尝试单击“排除区域”输入字段旁边的帮助按钮?帮助文本信息量很大...
  • Pushy,是的,尝试了帮助,并尝试在其上添加一些文本。但没有运气
  • 好的,排除 .svn 不起作用,svn 需要这个目录才能工作。无论如何,我认为“排除区域”不是您所需要的。此选项将仅限制查询更改的文件夹。这意味着,如果 /trunk/myfolder 中的任何文件有任何更改,构建将不会开始,但如果有任何其他更改并且作业已启动,则 /trunk/myfolder 中的文件仍将被签出。
  • SVN checkout ignore folder 的可能重复项

标签: svn hudson jenkins


【解决方案1】:

我认为您正在寻找一个 SVN 命令来在导出时忽略某些路径。

您可以查看this answer

【讨论】:

    【解决方案2】:

    我也在寻找相同的解决方案。我能找到的唯一一个是使用“添加更多位置”选项将您的存储库下的每个文件夹(即trunk/source、trunk/docs ..etc)添加为不同的模块(存储库url)。

    Jenkins 将在触发构建之前检查所有这些文件夹的更新。

    如果您的项目主干下的文件夹数量较少,此选项显然会有所帮助。

    干杯,

    【讨论】:

    • 这个想法很简单,但真的很有帮助,非常感谢
    【解决方案3】:

    排除的区域不会触发构建,而不是结帐(例如,您可能不想仅仅因为文档更改而触发构建)

    如果设置,并且 Jenkins 设置为轮询更改,Jenkins 将忽略 确定是否构建时此列表中的任何文件和/或文件夹 需要触发。

    因为你不能直接在 jenkins 中这样做(仍然)。但是您现在可能会使用多个模块,因此您可以使用白名单:

    url: http://svn/root/project/trunk
    repository depth: files
    
    url: http://svn/root/project/trunk/dirA
    repository depth: infinity
    
    url: http://svn/root/project/trunk/dirB
    repository depth: infinity
    
    url: http://svn/root/project/trunk/dirC
    repository depth: infinity
    

    这将跳过所有不是dirAdirBdirC 的目录,并将包括根项目中的所有文件。

    【讨论】:

      【解决方案4】:

      它的名字可能会说它从结帐中排除了一些文件,但请阅读帮助: 这是不会触发项目自动构建的文件列表,SVN上有新版本

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-01-10
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-10-20
        • 1970-01-01
        • 2017-01-16
        • 1970-01-01
        相关资源
        最近更新 更多