repo mirror 与 reference 功能简介

背景

有时候本地需要维护多份代码,其中大部分是相同的。

repo 有提供 mirror 功能,可以帮助减少多份相同代码的下载时间和本地磁盘占用。

使用方式

  1. 建立一个本地 mirror

就是正常的 repo init xxx 命令,加上 --mirror 参数。然后 repo sync 即可。

得到的这个 repo mirror 不能用于正常开发,就是专用作 mirror 功能的,里面是很多的 xxx.git

  1. 下载时指定 reference

需要下载代码时,在正常的 repo init xxx 命令后加上 --reference <mirror path> , <mirror path> 是本地的 mirror 路径。

实测效果

实测建立了 mirror 之后,使用 reference 功能下载的代码,空间占用从 17G 下降到了 12G,当然 mirror 本身也占用了空间。所以必须 SDK 副本必须足够多才会真正起到节省空间的作用。

对于多人共用一台服务器的情况,在服务器上建立一个公共 mirror,每个人再基于 mirror 下载自己的代码,是比较合适的。

其他

其实本地保存多份完整副本是比较浪费的,但有时候在一份代码上用多个分支切换确实不方便。

最近还看到一个 git worktree 功能,待具体学习实践。

blog:https://www.cnblogs.com/zqb-all/p/12685902.html

公众号:https://sourl.cn/DdsBKn

原文地址:https://www.cnblogs.com/zqb-all/p/12685902.html