Git 2.25.0 发布,新特性:部分 clone 与稀疏 checkout
Git 2.25.0 发布了,项目贡献者 Taylor Blau 介绍了此版本带来的一些特性上的亮点,包括部分克隆(partial clone)与稀疏检出(sparse checkout)。 partial clone,部分克隆 一般来说,Git clone 时副本会复制仓库的所有数据,包括历史记录中每个文件的每个版本,对于非常大的存储库,如果只需要文件的一部分,那会无形中增加网络传输和本地存储的成本。在过去的几个版本中,Git 拥有了执行部分克隆的能力,这意味着它现在可以克隆并使用存储库部分内容而无需拥有所有内容。 目前该特性还处于实验阶段。 具体来讲,部分克隆需要客户端做两件事:它必须能够告诉服务器它只需要存储库中的哪些对象,同时还必须能够不与缺少完整对象集的本地存储库产生冲突。另一方面,服务器则必须能够解释客户端的请求,仅服务于某些对象,并能够生成适当的响应。 这其中必要的逻辑是需要 Git 在收到服务器的响应后能够跳过检出存储库,因为一旦检出,那么它就会发现 clone 的对象不完整,并尝试向服务器请求。实际上这一功能由另一个新特性实现:sparse checkout,稀疏检出...
