提升jenkins构建效率的方法

感知论坛 20230719


一、前言


最近使用jenkins部署一个项目的时候,总是构建失败,卡在了git clone这一步骤,经过一系列的分析,发现jenkins执行git clone时,会先下载(或构建).git文件的。


随着项目提交的次数增多,特别是如果提交内容里有大文件,会发现.git文件越来越大


.git是一个隐藏文件,该文件夹存储了 Git 仓库的所有元数据和对象,包含:对象数据库(Object Database)、分支和标签信息、配置信息、日志和历史记录、钩子脚本(Hooks)等。


既然找到了导致jenkins构建过慢或者失败的病因,那该如何解决呢?


二、解决方式

方式一:压缩减少.git文件的体积


可以使用Git提供的命令行工具将.git文件压缩为更小的大小,运行以下命令:


git gc --aggressive --prune=all


这将使用Git的垃圾收集机制来清理和压缩不再使用的对象,并将不必要的历史记录从存储库中删除,这可能会减小.git文件的大小。


也可以使用一些第三方工具清理和优化Git存储库,例如:BFG Repo-Cleaner。


如果.git文件的大小主要是由于大型文件引起的,可以考虑从存储库中删除这些文件或使用Git的LFS(Large File Storage)扩展来处理大型文件,通过移除或外部存储大文件,可以减小.git文件的大小。

方式二:浅克隆(推荐)


如果不需要存储库的完整历史记录,并且只对最新的提交和文件更改感兴趣,可以使用Git的浅克隆(shallow clone)功能来减小.git文件的大小,运行以下命令(--depth表示只需要最后1条记录):


git clone --depth 1 -b 分支 仓库地址


这将只克隆最新的提交和文件,而不会复制完整的历史记录。


那么对应jenkins是这样配置的,首先打开项目的Git配置部分,找到“Additional Behaviors”(附加行为)选项,并点击“Add”(添加)按钮,选择“Advanced clone behaviours”:


然后配置Shallow clone,depth为1即可:


查看全文

点赞

感知论坛

作者最近更新

  • 卫星信号不稳?组合导航为何从不“迷路”?
    感知论坛
    22小时前
  • 聚焦这些传感器,瑞之辰压力传感器国产替代正当时
    感知论坛
    21小时前
  • RS485转ProfibusDP网关通过发送报文实现激光测距传感器开启关闭激光
    感知论坛
    07-22 09:41

期刊订阅

相关推荐

  • 汉威科技:公司传感器已在国际具有一定的知名度和影响力,将力争在传感器行业领域产出更多的创新产品

    传感器专家网 2022-05-26

  • 从源头控制污染:甲烷传感器在油气回收中的应用

    四方光电 2024-09-12

  • 福州大学:可控超大孔结构和高延展性的明胶水凝胶传感器!

    传感器专家网 2022-05-24

  • 国产替代正当其时,四方光电引领柴油发动机氮氧传感器技术突破

    四方光电Cubic 03-14 16:00

评论0条评论

×
私信给感知论坛

点击打开传感搜小程序 - 速览海量产品,精准对接供需

  • 收藏

  • 评论

  • 点赞

  • 分享

收藏文章×

已选择0个收藏夹

新建收藏夹
完成
创建收藏夹 ×
取消 保存

1.点击右上角

2.分享到“朋友圈”或“发送给好友”

×

微信扫一扫,分享到朋友圈

推荐使用浏览器内置分享功能

×

关注微信订阅号

关注微信订阅号,了解更多传感器动态

  • #{faceHtml}

    #{user_name}#{created_at}

    #{content}

    展开

    #{like_count} #{dislike_count} 查看评论 回复

    共#{comment_count}条评论

    加载更多

  • #{ahtml}#{created_at}

    #{content}

    展开

    #{like_count} #{dislike_count} #{reback} 回复

  • #{ahtml}#{created_at}

    #{content}

    展开

    #{like_count} #{dislike_count} 回复

  • 关闭
      广告