• SVNKIT的SVNCommitClient的doMkDir的操作


    package com.repositoryclient.svnoptions;
    
    import java.io.File;
    
    import org.tmatesoft.svn.core.SVNCommitInfo;
    import org.tmatesoft.svn.core.SVNDepth;
    import org.tmatesoft.svn.core.SVNException;
    import org.tmatesoft.svn.core.SVNURL;
    import org.tmatesoft.svn.core.internal.io.svn.SVNRepositoryFactoryImpl;
    import org.tmatesoft.svn.core.internal.wc.DefaultSVNOptions;
    import org.tmatesoft.svn.core.wc.ISVNOptions;
    import org.tmatesoft.svn.core.wc.SVNClientManager;
    import org.tmatesoft.svn.core.wc.SVNCommitClient;
    import org.tmatesoft.svn.core.wc.SVNWCUtil;
    
    public class ModelDeveloperUpLoadOption{
        public  boolean doUpLoad(String userName,String passwd,String SVNServerUrl,String dirPath,String folderName){
            SVNClientManager ourClientManager;
            // 初始化支持svn://协议的库
            SVNRepositoryFactoryImpl.setup();
            // 相关变量赋值
            SVNURL repositoryUrl = null;
            SVNURL uploadFolderUrl=null;
            SVNURL[] folder=new SVNURL[1];
            try {
                repositoryUrl = SVNURL.parseURIEncoded(SVNServerUrl);
                uploadFolderUrl=SVNURL.parseURIEncoded(SVNServerUrl+folderName);
                ISVNOptions options = SVNWCUtil.createDefaultOptions(true);
                // 实例化客户端管理类
                ourClientManager = SVNClientManager.newInstance(
                        (DefaultSVNOptions) options, userName, passwd);
                // 要把此目录的内容导入到版本库
                File impDir = new File(dirPath);
                // 执行导入操作
                SVNCommitClient svnCommitClient = ourClientManager.getCommitClient();
                
                folder[0]=uploadFolderUrl;
                svnCommitClient.doMkDir(folder, folderName);
                SVNCommitInfo commitInfo = svnCommitClient.doImport(impDir,
                        uploadFolderUrl, "import operation!", null, true, true,
                        SVNDepth.INFINITY);
                //System.out.println(commitInfo.toString());
                return true;
            } catch (SVNException e) {
                // TODO: handle exception
                e.printStackTrace();
                return false;
            }
        }
    
    }

    注意,这个函数的第一个参数要包含新建的文件夹的名称,就是说给出的url一定是一个新的url。第二个参数可能是message之类的意思。

  • 相关阅读:
    学习BoolanC++笔记_03(C++面向对象高级编程(上)第三周)
    学习Lua笔记_02(第二章 类型与值)
    学习Lua笔记_01(第一章 开始)
    学习Lua笔记_00(预备)
    学习BoolanC++笔记_02(C++面向对象高级编程(上)第二周)
    web基础(上篇)
    使用Hexo搭建自己的博客网站
    JDK17安装
    安装并配置nodejs
    Linux 常用命令
  • 原文地址:https://www.cnblogs.com/wangjiyuan/p/3409809.html
Copyright © 2020-2023  润新知