默认SVN会将服务器计算机中所有的版本库共享给网络用户,但有时我们仅希望发布其中一个版本库时,就需要限制仅发布web_project 一个版本到网络中,这样客户端也可以使用相对路径访问版本库,如:svn://centos.example.com/web_project(客户端会访问服务/var/svn/目录下 的web_project项目),同时,服务器端如果需要在authz文件中为目录设置权限,路径应该为[/]或[/test],即这里的根(/)仅表示web_project版本 库,/test表示web_project下的test目录;如果需要发布个别版本库给网络用户,可以使用svnserve 命令的-r 选项,该选项后面接版本库的路径:
svnserve -d -r /var/svn
4)客户端访问:
版本库服务器创建完成后,我们可以通过多种方式访问SVN服务器的版本库,可以使用命令行或者图形工具,也可以通过本地磁盘或网络 协议访问,但不管你使用哪种方式,都需要提供一个URL地址来定位版本库的位置,每种URL的使用格式及含义示下:
file:/// 直接访问本地磁盘上的版本库(客户端与服务器端在一台机器上)
http:// 配置Apache的WebDAV协议,通过网页访问版本库
https:// 与http://相似,但使用了SSL进行数据加密
svn:// 通过svnserve定义的协议访问版本库
svn+ssh:// 与svn://相似,但使用了SSH封装加密数据
在客户端访问服务器版本库的众多方法中,命令行的方式是高效,功能完善,无须安装第三方软件的一种简单方式,SVN软件为我们提供 了一个名为svn的命令行程序;
(1)svn命令:
描述:subversion客户端命令行工具
用法:svn 命令 【选项】
选项:
--password 密码
--username 用户名
--revision(-r) 指定要检查的特定版本
命令:
add 添加文件,目录或符合链接
cat 输出特定文件的内容
checkout URL[@REV] [PATH]
从服务器版本库中复制一份副本到本地,URL定位版本库,通过REV可以下载特定版本的数据,PATH为本地工作副本路径:
commit 将本地工作副本修改后的内容发布至版本中,简写为ci
copy SRC DST 将工作副本中的一个文件或目录复制到版本库中
delete PATH 从本地工作副本中删除一个项目
delete URL 从版本库中删除一个项目
diff 对比两个版本之间的差别
import 提交一个路径的副本至版本库中
info 显示本地或远程版本信息
svn实例:
svn checkout file:///var/svn/project1 mine
sv