SVNKit入门
SVNKit中怎样使用不同的仓库访问协议?
当你下载了最新版的SVNKit二进制文件并且准备使用它时,一个问题出现了,要创建一个库需要做哪些初始化的步骤?直接与Subversion仓库交互已经在低级层API中实现,主要的仓库访问驱动的接口就是SVNRepository抽象类。这个驱动实现了一些协议,一个协议一个实现。每个驱动由一个抽象工厂类-SVNRepositoryFactory 创建,抽象工厂类也有每一种协议的实现。下面的表格将一种协议和工厂类的实现类一一对应:
protocol
|
SVNRepositoryFactory realization
|
svn://
|
SVNRepositoryFactoryImpl
|
http://
|
DAVRepositoryFactory
|
file:///
|
FSRepositoryFactory
|
SVNKit初始化的操作
在使用SVNKit库前,你必须为某一特定的协议创建一个合适的SVNRepositryFactory对象。例如,如果你想使用 svn:// 协议来和仓库交互,你必须注册一下SVNRepositoryFactoryImpl工厂:
try {
SVNRepositoryFactoryImpl.setup();
...
} catch (SVNException e) {
//handle exception
}
这一步之后,由于SVNKit包含了注册的工厂对象,SVNRepositoryFactory知道了怎样给svn:// 协议创建SVNRepository驱动。接下来你就可以为它创建一个驱动了:
try {
...
SVNURL url = SVNURL.parseURIDecoded( "svn://host/path_to_repository_root/inner_path" );
SVNRepository repository = SVNRepositoryFactory.create( url, null );
...
} catch ( SVNException e ) {
//handle exception
}
在SVNKit中,所有的仓库url由SVNURL类来表示,如果一个路径字符串不是UTF-8编码的,可以使用SVNURL的 parseURIDecoded()方法来创建一个新的url(如果需要编码,它会重新编码)。然后你可以通过这个url来在SVNRepositoryFactory中创建一个新的SVNRepository驱动。这样,你可以绑定驱动到任何一个你想访问的仓库地址。
上图说明了不同的仓库路径所创建的不同的驱动;一个是仓库跟目录(svn://host/path_to_root),一个是仓库中的一个文件夹(svn://host/path_to_root/dirA),另一个是仓库中的一个文件(svn://host/path_to_root/dirB/fileB1)。SVNRepository驱动能执行的大多数操作接受一下两个类型的仓库路径:
1、 不以’/’开始的路径 – 总是相对驱动绑定的路径
2、 以’/’开始的路径 – 总是相对于仓库跟目录的绝对路径
使用高级层API
当你使用SVNKit管理工作拷贝时,由于高级层API使用低级层API来与仓库交互,你也需要创建合适的工厂类,如果你遗漏了这一初始化步骤,可能会抛出一个SVNKit不能给提供的url创建SVNRepository对象的异常。
SVN*Client 类
全部高级层管理工作拷贝的操作都逻辑的份分配到SVN*Client类中:每一个SVN*Client类将一类操作集中起来(例如,SVNUpdateClient提供update操作的API,如:check out,update,switch,export)。有两种方法使用这些类:
1、 仅创建需要使用的SVN*Client对象
2、 创建一个SVNClientManager对象,它能提供所有需要使用的类型的SVN*Client的对象。
往前的文章在我的博客中可以找到,持续更新中……by xiangxji@gmail.com
- 大小: 33.3 KB
分享到:
相关推荐
纯java操作svn--svnkit API!
svn客户端svn客户端svn客户端svn客户端svn客户端
java svn 插件和svn客户端java svn 插件和svn客户端
svn 服务端和 客户端
SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。互联网上很多版本控制服务已从CVS迁移到Subversion。说得简单一点SVN就是用于多个人共同...
华为 SVN Client PC客户端软件。SVN Client是著名的集中式项目管理工具,可以满足项目团队友好的管理项目文档、代码、工具等,用户只要知道项目的地址、用户名、密码,即可与SVN Server进行项目的提交、更新、清除等...
SVN服务器及客户端学习手册,比较详细的对SVN服务器及客户端的学习进行说明,适用于初学者搭建服务器及学习使用。
svnKit java操作svn :上传 下载 提交 更新 版本
svn客户端svn客户端svn客户端svn客户端svn客户端svn客户端svn客户端svn客户端svn客户端svn客户端svn客户端
svn32位客户端带语言包
SVN 服务端和客户端的安装包
svn client svn客户端 svn client svn客户端 浏览器访问svn,好使。不用安装任何插件。
svn 服务端 客户端svn 服务端 客户端svn 服务端 客户端svn 服务端 客户端svn 服务端 客户端svn 服务端 客户端svn 服务端 客户端svn 服务端 客户端svn 服务端 客户端svn 服务端 客户端svn 服务端 客户端svn 服务端 ...
SVN 服务端和客户端加客户端破解文件 win7和xp都可以使用。
svn服务器 svn客户端 win7 64位
svn 服务器和客户端 64位 and 32 位。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。...
Window下配置SVN服务器与客户端
svn-1.4.5-setup是服务器安装文件 svn里面是客户端安装文件
svn服务端、客户端、eclipse svn插件
svn客户端 64位操纵系统安装包 直接点击安装即可 简单