有没有办法从git的历史记录中清除一些文件?

有没有办法从git的历史记录中清除一些文件?,git,version-control,Git,Version Control,我已经将几个项目从Subversion迁移到git。它工作得非常好,但是当我克隆我的存储库时,它非常长,因为我有很多.jar文件的所有历史记录,包括在传输中 有没有办法在我的主存储库中只保留某些类型文件的最新版本。我主要想删除二进制文件的旧版本。简而言之,这将涉及重写整个git提交树以排除这些文件。 您是否尝试过使用git-gc和git-pack让git压缩您的存储库?您可以使用“git-rebase”-i或“git-filter-branch”删除旧版本 其他文档和教程: 不支持从现在起

我已经将几个项目从Subversion迁移到git。它工作得非常好,但是当我克隆我的存储库时,它非常长,因为我有很多.jar文件的所有历史记录,包括在传输中


有没有办法在我的主存储库中只保留某些类型文件的最新版本。我主要想删除二进制文件的旧版本。

简而言之,这将涉及重写整个git提交树以排除这些文件。
您是否尝试过使用
git-gc
git-pack
让git压缩您的存储库?

您可以使用“git-rebase”-i或“git-filter-branch”删除旧版本

其他文档和教程:

不支持从现在起仅保留当前版本。你最好的选择是 而是在修订控制中保留一个下载(或构建,或以其他方式生成)大型.jar文件的小脚本

由于这会修改历史记录,因此将使此存储库中以前的所有克隆或拉取无效