使用不同的配置为同一git存储库的多个副本节省空间

时间:2016-07-25 11:35:10

标签: git

我有一个大小> 2GB的git存储库。我们公司每年发布一个版本并支持其中的每一个版本5年,所以我需要5个不同分支和不同配置的存储库。

我只需要13GB的.git目录(没有源文件和其他库。

有没有办法共享.git存储库信息以节省空间?就像拥有大多数提交的中央文件夹和每个项目独有的小变更集一样?

1 个答案:

答案 0 :(得分:4)

您应该查看git worktree命令(git版本2.5.1或更高版本)

例如:

# git worktree add <path> [<branch>]

$ git worktree add ../version-42/ origin/tag-v42

这将创建一个包含新工作目录的新文件夹

来自git-worktree文档

  

新工作目录链接到当前存储库,共享除工作目录特定文件(如HEAD,索引等)之外的所有内容。

这可以为您节省大量空间。 只记住一件事:你不能同时拥有两个工作目录(工作树)同一个分支。

其他信息

使用git worktree list获取已注册工作树组及其各自分支机构的列表

使用git worktree prune更新工作树列表(如果您删除了一个或多个)

相关问题