我需要删除svn中文件的所有版本/ histroy。我知道如何使用以下代码
删除svn中的文件 ISVNAuthenticationManager authManager = SVNWCUtil.createDefaultAuthenticationManager((String) userKey,
(String) pwd);
repository.setAuthenticationManager(authManager);
ourClientManager = SVNClientManager.newInstance(null,
repository.getAuthenticationManager());
updateClient = ourClientManager.getUpdateClient();
System.out.println("SVN Authendication updateClient status - " + updateClient);
System.out.println("Start to delete an existing directory at '" + url + "'...");
try {
long deletedRevision = ourClientManager.getCommitClient().doDelete(new SVNURL[]{importToURL},
"New directory deletion").getNewRevision();
} catch (SVNException svne) {
System.err.println("Error on delete directory from SVN" + svne);
}
使用此代码可以删除文件,但svn大小没有变化。为此,我还需要删除其版本/历史记录以减小尺寸。使用java的其他任何想法
答案 0 :(得分:0)
您不能从任何Subversion客户端执行此操作,因为Subversion修订版本无论如何都是不可变的。
要完成从Subversion存储库中删除项目的所有痕迹,您需要对存储库具有管理访问权限,并且必须完成转储,过滤器和放大器。重新加载存储库(或执行过滤掉项目的同步,然后切换原始副本和新副本)。