如何加快使用jenkins引发的git pull?

时间:2017-10-30 08:26:02

标签: git jenkins msbuild

这是一个大小超过2 GB的xamarin移动应用程序。 我的领导能够使用MSBuild构建它。 我的任务是使用Jenkins和MSBuild作为插件自动构建。 由于这是一个非常大的应用程序,git pull已经花了一个多小时,任务进度条显示大约95%。

Question 1) How can I speed up this jenkins/git pulling process?

我正在研究客户端的虚拟机,互联网速度相当不错

我在这里分享我的jenkins控制台 enter image description here

提前致谢

2 个答案:

答案 0 :(得分:3)

  1. 浅层克隆

    您可以为--depth=<n>指定git clone。关键是要减少要获取的数据。对于连续添加新二进制文件的存储库,这不能很好地工作。

  2. 参考克隆

    首先将完整克隆作为jenkins作业可以访问的目录中的参考存储库。然后为--reference <path_of_the_reference_repository>添加git clone。定期更新参考存储库,可能每周两次左右,具体取决于您的需求。重点是重用参考存储库中已存在的任何数据,仅用于获取本地不存在的数据。

答案 1 :(得分:0)

如果你有一个快速的本地网络,但网络速度很慢,你可以在本地网络上保留一份结账的副本,并让你的构建版本复制到你的工作区并运行“git pull”,然后是“git checkout”科”。这并不理想,因为你失去了构建之间的“变化”,但如果这对你来说并不重要,那可能就是这个诀窍。另一个想法是不删除工作区,只需在结账前“清理”。理想情况下,你想做@ElpieKay建议的事情。我只是抛弃了另一种选择。