创建版本库(三)

1. 在一个非中文无空格目录下创建一个文件夹,作为版本库的根目录。

  例如:D:svnDep

2. 在版本库根目录下创建与具体项目对应的子目录——这样做的目的是使一个SVN 服务器能够同时管理多个项目,而不是为每一个项目搭建一个 SVN 服务器——这显然太浪费资源了。

  例如:D:svnDepCRM

    D:svnDepERP

    D:svnDepOA

3. 创建版本库

以OA项目为例

svnadmin create 仓库路径
#举例:svnadmin create D:svnDepOA

版本库的目录结构说明:

conf:存放版本库所使用的配置文件目录

db:存放存储版本数据的数据库文件的目录

hooks:存放版本库钩子程序的目录

locks:存储库锁目录,用来跟踪库的访问者

format:存储一个整数的文件,此整数代表库层次结构版本

README.txt:版本库自述文件

4. 启动服务器程序

SVN 服务器必须处于运行状态才能响应客户端请求,帮助我们管理项目文件。所以我们必须将 SVN 服务器启动起来。启动 SVN 服务器有两种方法,一个是命令行方式,一个是注册 Windows 服务。

(1) 命令行方式

# -d 表示后台运行
# -r 版本库根目录
svnserve -d -r D:svnDep

验证服务是否启动:

SVN 服务监听 3690 端口,打开一个新的 cmd 窗口,使用 netstat -an 命令查看 3690端口是否被监听
 
命令行方式的缺陷是:只要运行服务器端程序的命令行窗口一关闭,服务就停止了,很不方便,而且每次开机都需要手动启动。 

(2) 服务方式

注册 Windows 服务需要利用 XP、2000 以上系统自带工具 Service Control,执行文件是 sc.exe,注意这个命令不是 SVN 的命令。 
# MySVNService 服务名
# binpath依次包括:
#     SVN 安装目录insvnserve.exe
#    --service 以服务方式启动 Subversion
#    -r 表示版本库根目录,可以指定单仓库多仓库,这里配置的是多仓库
# start= auto 表示自动启动
# depend= Tcpip    表示依赖 Tcpip 协议
# 特别注意:binpath、start、depend三个参数等号左边都没有空格,右边都有一个空格
sc create MySVNService binpath= "C:installSubversioninsvnserve.exe --service -r D:svnDep" start= auto depend= Tcpip
 
在 Win7 及以上系统中,运行该命令需要管理员权限,解决的办法是以管理员身份运行 cmd 命令行窗口即可。
若在防火墙或电脑卫士提示阻止时,选择允许。
此时查看当前系统中的服务,可以看到我们刚刚创建的服务,但此时它还没有启动,如果创建失败,需检查 sc 命令是否正确。
 
启动服务:sc start MySVNService
停止服务:sc stop MySVNService
删除服务:sc delete MySVNService
 
原文地址:https://www.cnblogs.com/myitnews/p/11487697.html