【发布时间】:2016-05-19 17:20:48
【问题描述】:
我有一个测试存储库,我们在其中进行了一系列更改以传递给生产团队。这已经增长了一点 - 我们想修剪回购。由于我们在其他客户中有副本 - 我们希望
- 对于给定目录中的所有文件 - 删除除之前 3 个版本之外的所有文件,并从存储库中删除所有引用。
我想按目录执行此目录。基本上从 git/repo/disk 中删除目录中给定文件的任何早于 n-3 的版本。
谢谢
【问题讨论】:
-
Git 由 repository 的版本运行,而不是每个 file 的真正版本。除了最后 n 个版本的 repo 之外,删除所有版本将非常容易。但是,如果您想保留每个文件的最后 n 个版本,那会是什么样子。如果一个提交最初有 10 个文件更改,但使用您的修剪算法,因为其中 9 个随后被更改 (n+2) 次,您将保留该提交但现在只包含一个文件。该提交的提交消息将具有欺骗性。无论如何,大有多大? Git 在压缩方面做得很好。
-
repo 是托管的 - 大约 3GB。主要是图像 - 这就是我们想要这样做的原因.. t