1. package com.repositoryclient.svnoptions;
  2.  
  3. import java.io.File;
  4.  
  5. import org.tmatesoft.svn.core.SVNCommitInfo;
  6. import org.tmatesoft.svn.core.SVNDepth;
  7. import org.tmatesoft.svn.core.SVNException;
  8. import org.tmatesoft.svn.core.SVNURL;
  9. import org.tmatesoft.svn.core.internal.io.svn.SVNRepositoryFactoryImpl;
  10. import org.tmatesoft.svn.core.internal.wc.DefaultSVNOptions;
  11. import org.tmatesoft.svn.core.wc.ISVNOptions;
  12. import org.tmatesoft.svn.core.wc.SVNClientManager;
  13. import org.tmatesoft.svn.core.wc.SVNCommitClient;
  14. import org.tmatesoft.svn.core.wc.SVNWCUtil;
  15.  
  16. public class ModelDeveloperUpLoadOption{
  17. public boolean doUpLoad(String userName,String passwd,String SVNServerUrl,String dirPath,String folderName){
  18. SVNClientManager ourClientManager;
  19. // 初始化支持svn://协议的库
  20. SVNRepositoryFactoryImpl.setup();
  21. // 相关变量赋值
  22. SVNURL repositoryUrl = null;
  23. SVNURL uploadFolderUrl=null;
  24. SVNURL[] folder=new SVNURL[];
  25. try {
  26. repositoryUrl = SVNURL.parseURIEncoded(SVNServerUrl);
  27. uploadFolderUrl=SVNURL.parseURIEncoded(SVNServerUrl+folderName);
  28. ISVNOptions options = SVNWCUtil.createDefaultOptions(true);
  29. // 实例化客户端管理类
  30. ourClientManager = SVNClientManager.newInstance(
  31. (DefaultSVNOptions) options, userName, passwd);
  32. // 要把此目录的内容导入到版本库
  33. File impDir = new File(dirPath);
  34. // 执行导入操作
  35. SVNCommitClient svnCommitClient = ourClientManager.getCommitClient();
  36.  
  37. folder[]=uploadFolderUrl;
  38. svnCommitClient.doMkDir(folder, folderName);
  39. SVNCommitInfo commitInfo = svnCommitClient.doImport(impDir,
  40. uploadFolderUrl, "import operation!", null, true, true,
  41. SVNDepth.INFINITY);
  42. //System.out.println(commitInfo.toString());
  43. return true;
  44. } catch (SVNException e) {
  45. // TODO: handle exception
  46. e.printStackTrace();
  47. return false;
  48. }
  49. }
  50.  
  51. }

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

SVNKIT的SVNCommitClient的doMkDir的操作的更多相关文章

  1. SVNKit学习——使用低级别的API(ISVNEditor接口)直接操作Repository的目录和文件(五)

      本文是参考官方文档的实现,官方wiki:https://wiki.svnkit.com/Committing_To_A_Repository 本文核心使用的是ISVNEditor这个接口直接对Re ...

  2. SVNKit学习——基于Repository的操作之print repository tree、file content、repository history(四)

    此篇文章同样是参考SVNKit在wiki的官方文档做的demo,每个类都可以单独运行.具体的细节都写到注释里了~ 开发背景: SVNKit版本:1.7.14 附上官网下载链接:https://www. ...

  3. java操作svn【svnkit】实操

    SVNKit中怎样使用不同的仓库访问协议? 当你下载了最新版的SVNKit二进制文件并且准备使用它时,一个问题出现了,要创建一个库需要做哪些初始化的步骤?直接与Subversion仓库交互已经在低级层 ...

  4. SVNKIT操作SVN版本库的完整例子

    Model: package com.wjy.model; public class RepositoryInfo { public static String storeUrl="http ...

  5. java svnkit实现svn提交,更新等操作

    官网:https://svnkit.com/ api:https://svnkit.com/javadoc/org/tmatesoft/svn/core/io/SVNRepository.html w ...

  6. svnkit 用java 操作 svn

    官网 https://svnkit.com/ https://blog.csdn.net/Hui_hai/article/details/80318518 https://blog.csdn.net/ ...

  7. 使用svnkit 的相关实例及相关问题汇总

    SVNKIT操作SVN版本库的完整例子 http://www.cnblogs.com/wangjiyuan/p/svnkitwanchenglizi.html#!comments 2.SVNClien ...

  8. SVNKIT的low api应用之修改库中文件内容(File modification)

    最近在做一个仓库管理系统,架构在svn之上.要求每一项操作要记录在log文件中,弄了很久起初感觉无法向库中的文本文件添加东西,就是修改库中的文本文件.于是采用了一个很笨的办法:    现将库中的log ...

  9. java操作svn工具类SvnUtil

    直接上代码,工作中使用的版本,记录下. public class SvnUtil { private static Logger logger = Logger.getLogger(SvnUtil.c ...

随机推荐

  1. high volume logging

    logging 是现在系统中必不可少的组件了.市面上已经有很多很多非常成熟的日志产品,log*系列就是一个典型代表.对于erlang系统来说,也有很多,比如error_logger, disk_log ...

  2. 设计模式六大原则(2):里氏替换原则(Liskov Substitution Principle)

    肯定有不少人跟我刚看到这项原则的时候一样,对这个原则的名字充满疑惑.事实上原因就是这项原则最早是在1988年,由麻省理工学院的一位姓里的女士(Barbara Liskov)提出来的. 定义1:假设对每 ...

  3. CSS中的几个概念--------Day39

    世界杯疯狂来袭,让这个原本就高温的夏季瞬间被引爆了,这肆虐的激情仿佛让一切都灼热了起来,绽放着刺目的光,工作之余总有那么一群人在那激烈的讨论着争辩着,抑不住的亢奋. 非常不巧,往往这群身影中总有我的存 ...

  4. 安装ipvsadm报错

    server环境: [vagrant@localhost download]$ uname -a Linux RS1 2.6.18-238.el5 #1 SMP Thu Jan 13 15:51:15 ...

  5. CF 258B Little Elephant and Elections [dp+组合]

    给出1,2,3...m 任取7个互不同样的数a1,a2,a3,a4,a5,a6,a7 一个数的幸运度是数位上4或7的个数 比方244.470幸运度是2. 44434,7276727.4747,7474 ...

  6. Android手机便携式wifi的使用及无线数据传输(主要针对XP系统)

    适用条件: 1.可以上网的安卓系统2.2以上的智能手机,或有便携式wifi功能的安卓智能手机 2.有无线网卡的笔记本电脑或台式机(特别是XP系统) 测试手机:中兴U930 电脑:华硕K50系列笔记本 ...

  7. 14.2.5.4 Physical Structure of an InnoDB Index InnoDB Index 的物理结构

    14.2.5.4 Physical Structure of an InnoDB Index InnoDB Index 的物理结构 所有的InnoDB indexes 是B-trees ,index ...

  8. 改动已有gpg密钥的用户标识及凝视

    /*********************************************************************  * Author  : Samson  * Date   ...

  9. 分析javascript关闭

    1.什么是闭包 1)官方解释 一个拥有多个变量和绑定了这些变量的环境的表达式(一般是一个函数).因而这些变量也是该表达式的一部分. 我的理解:所谓的闭包就是连接函数内部和函数外部的一座桥梁.使得在外部 ...

  10. Struts2获取演示示例教程

    回想Struts2的使用过程,网上搜的教程多多少少都会有点问题.又一次记录下创建过程,方便查阅. 1.下载Struts2的jar包 下载地址:http://archive.apache.org/dis ...