windows 安装subversion1.9.4服务及配置
一、下载
网上这类下载包很多,百度一搜一大把,可以自己去下载,本文为了方便读者,后面对应的附件,附带我配置正常使用的下载包,可供下载使用。
下载解压后,放到对应的目录中,我使用的是D:盘,所以安装再d盘的programe files目录中:
二、配置
2.1 .环境变量
环境变量配置:path:D:\Program Files\Subversion\Bin;
2.2.创建项目仓库
建立目录,存放所有仓库,这里为 “D:\Subversion”。
创立独立仓库,存放各个项目(如bank银行项目)
svnadmin create D:\Subversion\BankProject
2.3.配置用户和权限
1)修改svnserve.conf文件
打开 D:\Subversion\BankProject/conf目录下的svnserve.conf文件。
原来配置:
[general]
-
# anon-access = read
-
# auth-access = write
-
# password-db=passwd
-
# authz-db = authz
-
#realm =
修改成以下配置,去掉前面的#号:
[general]
-
anon-access=none //未验证用户无任何权限
-
auth-access=write //已验证用户给予写权限
-
password-db=passwd //密码数据存放到passwd文件中
-
authz-db = authz //authz-db指明权限配置文件路径
-
realm = repository /*realm用于指明仓库所属的认证域,默认情况下每个仓库位于不同的域(每个仓库有一个唯一的uuid),因此我们可以不设置该项,除非多个仓库需要共用同一份passwd配置。*/
解释:anon-access=none为未验证用户没有任何权限,如果这里不改,用户不用输入密码即可获得代码版本。
auth-access=write已验证用户给予写权限。
password-db=passwd将密码存到passwd文件中。
2)修改passwd文件
原来配置:
[users]
-
#harry = harryssecret
-
#sally = sallyssecret
“=”号前面是用户名,后面是密码。按照这种格式建立自己的用户名和密码。
[users]
admin= admin
3)修改authz文件
-
[groups]
-
# harry_and_sally = harry,sally
-
# harry_sally_and_joe = harry,sally,&joe
-
svnadmin=admin
-
[/]
-
admin=rw
-
# [/foo/bar]
-
# harry = rw
-
# &joe = r
-
# * =
-
# [repository:/baz/fuz]
-
# @harry_and_sally = rw
-
# * = r
解释:创建用户组并精确配置某个用户或用户组对某个文件或目录的访问权限。groups用于定义用户组,后面便是对资源的具体访问控制,/表示仓库根目录,*表示所有用户,用户组前面需加上@符号,r表示可读,w表示可写,等号 右边为空则表示没有权限。注意对于目录结构,当用户访问某个资源时,SVN会先看有没有直接针对该资源的访问控制,如果没有找到,则会继承上一级目录的访 问权限,如此递推。
三、启动SVN服务器
3.1.dos启动
命令: svnserve -d -r D:\Subversion
至此,你的SVN服务器已经可以访问了!访问地址为:svn://127.0.0.1/project1远程访问只需将127.0.0.1换做subversion服务器IP地址。
3.2.windows服务启动
3.2.1.配置服务命令
打开dos界面,输入以下命令:
sc create subversion_service binpath= "D:\\Program Files\\Subversion\\bin\\svnserve.exe --service -r D:\\Subversion/BankProject" displayname= "Subversion Repository" depend= Tcpip start= auto
3.2.2.解释
- subversion_service为服务的名称。所有的系统服务可以在dos下通过命令手动启动和停止。 启动:net start
subversion_service 停止:net stop subversion_service - binpath为安装subversion的路径,可执行文件的路径。
- D:\Subversion为版本库的路径。
- displayname= “Subversion
Repository”为注册成的系统服务显示名称,注册成功后,可以在系统服务中找到这个名称。 - depend= Tcpip为依赖Tcpip协议。
- start= auto为注册成的系统服务启动类型为自动。