一年多以前,我已经在gitlab上创建了一个私有存储库,并且随着时间的流逝,回购已经有了相当大的发展。事后看来,我的一个错误是在存储库中放入了一些大的二进制文件。我不知道git-lfs
,现在回购已大大增加。
所以我认为可能的方法是:
git-lfs
(同样在所有分支上启用)。这种情况是我在存储库中有很多活动分支。有没有办法用最少的命令在所有分支上做到这一点?
当然,另一种方法是存档此仓库,然后从头开始在全新的存储库中启用git-lfs
并手动添加所有内容。但是,考虑到分支的数量,这似乎又很乏味。
答案 0 :(得分:2)
git lfs import
命令将自动执行此操作。它将重写每个分支以删除大文件:
git lfs migrate import --everything
将在历史记录中找到所有大文件,并重写每个分支以将hem设置为LFS对象,而不是将大文件直接保留在Git中。
如果要确定要导入的大文件:
git lfs migrate import --everything --include='*.dat'
无论大小如何,都将迁移所有以.dat
结尾的文件。
如果您的存储库中有几个人在工作,我建议您plan this migration carefully,因为最终您将需要强制推送您重写的分支。