我已将一些项目从Subversion迁移到git。它工作得非常好但是当我克隆我的存储库时,它真的很长,因为我已经包含了很多.jar文件的所有历史记录。
有没有办法只在我的主存储库中保留某种类型文件的最新版本。我主要想删除二进制文件上的旧版本。
答案 0 :(得分:5)
您可以使用“git rebase”-i或“git filter-branch”删除旧版本
http://schacon.github.com/git/git-filter-branch.html
http://schacon.github.com/git/git-rebase.html
其他文档和教程: http://git-scm.com/documentation
不支持仅保留当前版本。你最好的选择是 而是在版本控制中保留一个下载(或构建或以其他方式生成)大型.jar文件的小脚本。
由于这会修改历史记录,因此会使此存储库中以前的所有克隆或拉动无效。
答案 1 :(得分:1)
简而言之,这将涉及重写整个git提交树以排除文件。
您是否尝试过使用git gc
和git pack
让git压缩您的存储库?