我正在使用一个超过3年的SVN存储库,包含超过6,100次提交,并且大小超过1.5 GB。我想在将SVN存储库移动到新的服务器之前,减少SVN存储库的大小(我不是在谈论完整SVN导出的大小 - 我的意思是存储在服务器上的完整存储库)。如何识别并删除SVN存储库中的大型二进制提交?
当前的存储库包含的源代码,我们所有的软件项目,但它也包含了没有意义的比较大的二进制文件,如:
- 为一些第三方工具全部安装。
- .jpg &.png文件(这是生活在同一文件夹中的PSD的未修改导出)。
- Bin和Obj文件夹(然后'svn忽略'下一个提交)。
- Resharper目录。
许多这些大文件自从被添加以来一直被'SVN删除',从而产生了识别最大罪犯的进一步问题。
我想要么:
- 创建一个只包含的代码,所有的软件项目的一个新的SVN仓库 - 这是非常重要是复制的文件保持从旧仓库的SVN历史。
- 从现有存储库中删除较大的二进制提交和文件。
其中任何一种可能吗?
这一天会来的。但是,如果你继续前进,其他人对“svnadmin dump”是正确的。 – 2010-02-02 01:54:27
为什么我会后悔(诚实的问题 - 而不是挑战!)?我只是想摆脱SVN中的内容,这些内容可以存储在其他地方(我会这样做),或者根本不需要存储。据我现在看到,唯一的遗憾是,如果svnadmin转储和svndumpfilter损坏存储库历史记录,并且只有在许多提交完成后才能识别它。你是否认为历史腐败可能? – InvertedAcceleration 2010-02-02 09:45:22