例如,我只想要某个分支或项目的3条记录。
非常感谢!
更新: 谢谢你们的回答。 也许这不是一个好问题。我有一个框架repo和几个引用框架的项目。我经常在一个项目上工作,有时我需要更新框架。但是,由于我对框架的更新,我不想影响任何其他项目,尽管我可能没有时间在框架更改时再次更新每个项目。所以我考虑的解决方案是在每个项目的框架.dll中填充,以便每个项目都可以缓存一个dll版本,并且它们不会中断。但是,我不希望我的svn保留很多dll签名,所以我想出了上面的问题..... 我只是认为我应该在每个项目中保留一个框架源代码的副本而不是dll。一旦我决定使用更新的框架,我就可以合并到每个项目的框架副本。听起来更好。
答案 0 :(得分:1)
不幸的是没有。 SVN旨在成为信息的堡垒。您不能将其限制为x
次修订。
这也是为什么你不能完全或轻松地删除任何来自SVN的东西的原因。他们希望带出 obliterate 命令来处理不必转储存储库以删除某些内容(如完全从repo中删除),但它已经在工作了很长一段时间。看看more information。
答案 1 :(得分:1)
根据您的更新,您应该查看svn:externals,以便从将使用框架的每个项目(dll或可能是源代码)引用框架区域。另一方面,您可以存储二进制文件,SVN也将使用增量。所以它不应该是空间问题。
答案 2 :(得分:0)
SVN没有任何内置的方法来做到这一点,但如果你真的想(不知道为什么会这样)你可以定期运行以下(在这个例子中我假设你的HEAD是修订版200,因此3之前是197):
svnadmin dump /path/to/repo -r196:200 > svn.dump
rm -rf /path/to/repo
svnadmin create /path/to/repo
svnadmin load /path/to/repo < svn.dump
这将执行整个存储库,您无法对单个项目执行此操作。
答案 3 :(得分:0)
您可以使用svndumpfilter
从存储库转储中删除特定项目。