繁体   English   中英

如果源代码已经签出,在Jenkins作业中git fetch是否安全?

[英]Is it safe to git fetch in Jenkins job if the source code checked out already?

在我们所有的Jenkins作业中,我们在检出代码之前删除工作区中的文件:

        steps {
            // Clean workspace before doing anything
            deleteDir()

            checkout scm
        }

但是当查看为构建作业创建的容器时,我可以看到workspace目录下有许多不同的文件夹,其中包含先前签出的代码。

鉴于每个工作区目录都是唯一的,并且是为每个git分支创建的,因此我相信可以安全地检查源代码在构建时是否已经存在,而不是删除文件并检查代码,我们也许可以使用git fetch代替。

我的假设是正确的并且可以可靠吗? 我试图减少构建时间,因为根据存储库的大小,签出代码要花费1到8分钟。

我曾经删除过deleteDir()但是由于.git文件的某些问题,作业失败了。

我们使用的是groovy代码,并且我们有自己的构建库,因此签出代码和/或maven构建之类的操作是手动完成的,而不是通过Jenkins Pipeline

您的假设是正确的,如果您经常进行构建,则可以节省大量时间。 但是我们发现有时候它没有从github获取最新的代码。 因此,很高兴有一个用于清理构建的复选框,该复选框可以删除工作区并克隆存储库。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM