有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java无法使用svnkit将整个SVN存储库签出到本地计算机

我尝试使用svnkit到本地目录签出整个SVN存储库,并尝试使用SVNUpdateClient updateClient=clientManger。getUpdateClient();始终返回null。 我正在使用svnkit这样做

这是我的密码:

File wcFolder=new File("some directory path");
        ISVNOptions myOptions=SVNWCUtil.createDefaultOptions(true); 
         ISVNAuthenticationManager myAuthManager=SVNWCUtil.createDefaultAuthenticationManager("xyz","abc"); 
        SVNClientManager clientManger = SVNClientManager.newInstance(myOptions, myAuthManager);
        SVNUpdateClient updateClient = clientManger.getUpdateClient();
        updateClient.setIgnoreExternals(false); 
        updateClient.doCheckout(SVNURL.parseURIDecoded("some path to xyz/trunk"), wcFolder, SVNRevision.HEAD,SVNRevision.HEAD, SVNDepth.INFINITY, true);

共 (1) 个答案

  1. # 1 楼答案

    我找到了查看SVN的正确方法

    SVNURL svnurl = SVNURL.parseURIDecoded(url);
    SVNRepository repository = SVNRepositoryFactory.create(svnurl);
    ISVNAuthenticationManager authManager = SVNWCUtil.createDefaultAuthenticationManager(uname, password);
    repository.setAuthenticationManager(authManager);
    SVNClientManager ourClientManager = SVNClientManager.newInstance();
    ourClientManager.setAuthenticationManager(authManager);
    SVNUpdateClient updateClient = ourClientManager.getUpdateClient();
    updateClient.setIgnoreExternals(true);
    
    long latestRevision = repository.getLatestRevision();
    if (updateClient.doCheckout(svnurl, destinationDir,
            SVNRevision.HEAD, SVNRevision.HEAD, SVNDepth.INFINITY,
                    allowUnversionedObstructions) == latestRevision) {
        ourClientManager.dispose();
    }