阅读更多

9顶
0踩

编程语言

原创新闻 SVNKit 1.1.6 开源Subversion工具库发布

2008-02-27 12:59 by 资深编辑 withyou 评论(4) 有8205人浏览
SVNKit 是一个完全基于Java的Subversion开源工具库。SVNKit支持Java API控制和操作Subversion工作拷贝和资源。SVNKit支持http,https,svn和svn+ssh连接协议等。

通过SVNKit,你可以很容易的操作控制Subversion。

checks out project from repository:

   File dstPath = new File("c:/svnkit");
   SVNURL url = SVNURL.
       parseURIEncoded("http://svn.svnkit.com/repos/svnkit/branches/1.1.x/");

   SVNClientManager cm = SVNClientManager.newInstance();
   SVNUpdateClient uc = cm.getUpdateClient();
   uc.doCheckout(url, dstPath, SVNRevision.UNDEFINED, SVNRevision.HEAD, true);


Updates it to the latest revision:

uc.doUpdate(dstPath, SVNRevision.HEAD, true); 


And finally commits local changes in "www" subdirectory if there are any:

   SVNCommitClient cc = cm.getCommitClient();
   cc.doCommit(new File[] {new File(dstPath, "www")}, false, "message", false, true);


Access Subversion repository directly:

   SVNURL url = SVNURL.parseURIEncoded("http://svn.svnkit.com/repos/svnkit/branches/1.1.x/");
   SVNRepository repos = SVNRepositoryFactory.create(url);

   long headRevision = repos.getLatestRevision();
   Collection entriesList = repos.getDir("www", headRevision, null, (Collection) null);
   for (Iterator entries = entriesList.iterator(); entries.hasNext();) {
        SVNDirEntry entry = (SVNDirEntry) entries.next();
        System.out.println("entry: " + entry.getName());
        System.out.println("last modified at revision: " + entry.getDate() + 
                                        " by " + entry.getAuthor());
   }



Replace JNI Subversion bindings with SVNKit:

   // pure Java implementation of the standard Subversion Java interface
    SVNClientInterface jniAPI = SVNClientImpl.newInstance();
   byte[] contents = 
        jniAPI.fileContent("http://svn.svnkit.com/repos/svnkit/branches/1.1.x/changelog.txt", 
               Revision.HEAD); 


点击下图进入SVNKit官方网站

来自: java.dzone.com
9
0
评论 共 4 条 请登录后发表评论
4 楼 renxin777 2008-08-31 09:01
本人感觉这个东西是一个Subversion的客户端-java编写的,现在有很多应用程序从业务角度需要对某一项业务对象进行版本控制,如果用Java+数据库表的方式实现就会有一些易用性方面和处理复杂的问题,但是如果使用java+subversion的方式实现,那样版本控制的工作就完全的交给了subversion,简化了应用本身的逻辑。

例如: 一般OA应用的流程和文档都是需要版本控制的,如果用程序实现等于要实现subversion的大部分工作,如果使用java+svnkit+subversion的话应用对于版本控制这块的开发量会减少很多。




3 楼 agile_boy 2008-02-28 09:24
呵呵,是svn的java的api实现啊  还不错的。
2 楼 cddcdd 2008-02-28 09:21


还以为和subclipse一样
其实根本就不一样
1 楼 yanyanlong 2008-02-27 20:05
那个大哥解释下,
这个是用来做什么的?
类似小海龟的工具?

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • 设计模式之创建型模式

    提供一个简单的决策类,根据条件生成产品...简单工厂模式的实质是由一个工厂类根据传入的参数,动态决定应该创建哪一个产品类(这些产品类继承自一个父类或接口)的实例。提供一个类,由它负责根据一定的条件创建某一具

  • Android动态加载黑科技 动态创建Activity模式

    还记得我们在代理Activity模式里谈到启动插件APK里的Activity的两个难题吗,由于插件里的Activity没在主项目的Manifest里面注册,所以无法经历系统Framework层级的一系列初始化过程,最终导致获得的Ac

  • 简单工厂模式扩展之动态创建对象和配置化开发(C++反射机制的实现)

    如果对简单工厂模式不够了解可以先看这里。...工厂类,用来注册、保存和创建要动态创建的类: class CObjectFactory { public: static void registerClass(std::string className, Constructor c...

  • Java经典设计模式之五大创建型模式(附实例和详解)

    (1)创建型模式,共五种: 一、Singleton,单例模式 : 保证一个类只有一个实例,并提供一个访问它的全局访问点 二、Abstract Factory,抽象工厂:提供一个创建一系列相关或相互依赖对象的接口,而无须指定它们...

  • 什么是设计模式?常用的设计模式有哪些?

    4. 观察者模式:定义对象之间的一对多依赖关系,当一个对象状态发生改变时,所有依赖它的对象都会得到通知并自动更新。...1. 工厂模式:用于创建对象的模式,将对象的创建过程封装起来,使得代码更加灵活和可扩展。

  • # 动态代理设计模式.md

    动态代理是一种设计模式,它允许在运行时为对象创建代理,并在代理对象上执行方法调用。代理对象可以拦截对真实对象的访问,并允许在调用前后插入附加逻辑。这种设计模式可以用于横切关注点的集中处理,如日志记录、...

  • 面试官:谈谈Spring中用到了哪些设计模式?

    Spring使用工厂模式可以通过 BeanFactory 或 ApplicationContext 创建 bean 对象。 两者对比: BeanFactory :延迟注入(使用到某个 bean 的时候才会注入),相比于BeanFactory来说会占用更少的内存,程序启动速度更快...

  • java创建型_java创建型模式有哪些?

    java创建型模式有哪些?java创建型模式有:1、PROTOTYPE举例:跟MM用QQ聊天,一定要说些深情的话语了,我搜集了的情话,需要时只要...原始模型模式允许动态的增加或减少产品类,产品类不需要非得有任何事先确定的等...

  • Spring 中使用了哪些设计模式?

    spring中常用的设计模式达到九种,我们举例说明。1、简单工厂模式又叫做静态工厂方法(StaticFactory ... 简单工厂模式的实质是由一个工厂类根据传入的参数,动态决定应该创建哪一个产品类。 spring中的BeanFact......

  • 【创建型设计模式】C#设计模式之工厂模式,以及通过反射实现动态工厂。

    此时我们可以采用动态工厂,通过反射的形式去创建对象。上述代码给出了抽象基类的基本定义,和泛型工厂的实现方式,以及调用方式。这个工厂类是有弊端的,比如每次添加新的汽车对象我们都需要去修改。类型参数满足...

  • C++设计模式之动态创建

    3,MFC动态创建原理演示; 4,自定义动态创建示例; 一、简述 动态创建(Dynamic Creation)是MFC六大核心机制之一。它的本质就是在运行时根据“类的某些信息”(如类名——字符串)创建对应的类对象,且客户代码...

  • 五种创建型模式

    单例模式、建造者模式、抽象工厂模式、工厂方法模式、原型模式 一、单例模式 如何有效地进行程序初始化

  • 什么是设计模式?

    一、设计模式简介 设计模式(英语 design pattern)是对面向对象设计中反复出现的问题的解决方案。这个术语是在1990年代由Erich Gamma等人从建筑设计领域引入到计算机科学中来的。这个术语的含义还存有争议。算法不是...

  • Spring框架中都用到了哪些设计模式?

    工厂设计模式 单例设计模式 代理设计模式 代理模式在 AOP 中的应用 Spring AOP 和 AspectJ AOP 有什么区别? 模板方法 观察者模式 Spring 事件驱动模型中的三种角色 事件角色 事件监听者角色 事件发布者角色 ...

  • 【设计模式】Spring 中使用了哪些设计模式?

    简单工厂模式的实质是由一个工厂类根据传入的参数,动态决定应该创建哪一个产品类。 spring中的BeanFactory就是简单工厂模式的体现,根据传入一个唯一的标识来获得bean对象,但是否是在传入参数后创建还是传入参数前...

  • 代理模式与动态代理深入理解

    动态代理,开闭原则

  • 原生js图片圆形排列按钮控制3D旋转切换插件.zip

    原生js图片圆形排列按钮控制3D旋转切换插件.zip

  • 类似c++数组的python包

    内含二维数组与三维数组,分别为list2nd,list3rd

  • 原生js颜色随机生成9x9乘法表代码.zip

    原生js颜色随机生成9x9乘法表代码.zip

  • 原生js实现图片叠加滚动切换代码.zip

    原生js实现图片叠加滚动切换代码.zip

Global site tag (gtag.js) - Google Analytics