git服务器构建是否应该克隆到1的深度?

时间:2017-02-02 17:52:02

标签: git

我们已经转而使用git并正在努力解决这些问题。

似乎在构建服务器上,克隆到1的深度将是永远的方式,因为构建服务器不应该需要任何历史记录。

这不是个好主意吗?

3 个答案:

答案 0 :(得分:2)

我已经找到了默认情况下不提取浅层提取的原因: 有时git服务器计算需要下载哪些提交要比提供完整历史记录要慢一些。

这对于研究为什么git检索花费的时间比预期更长是有用的。

来自VSTS documentation

  

浅取:选择是否要限制历史记录的返回距离   下载。实际上,这导致git fetch --depth = n。如果你的   存储库很大,此选项可能会使您的构建过程更多   高效。如果您的存储库已用于a,则您的存储库可能很大   很久。如果您添加并稍后删除大,它也可能很大   文件。

     

在这些情况下,此选项可以帮助您节省网络和存储空间   资源。它也可以节省时间。它没有永远保存的原因   时间是因为在某些情况下服务器可能需要花时间   计算要下载的提交。

此外,如果深度值不够大,并且您要查找的代码位于不是存储库中最新变更集的分支或变更集上,则需要版本不会被删除。

答案 1 :(得分:1)

如果完整克隆过于耗时,可以选择深度为1的克隆。

如果你被大量的历史记录推迟需要很长时间才能克隆,你的速度会有显着提高。

如果您要问的是:是否正在使用克隆深度1来构建服务器?

是的,这很好。

答案 2 :(得分:0)

确保您的构建过程不使用GitVersion。它需要完整的历史来确定SemVer