SVN的服务器的配置
一: SVN包括:服务器端(Subversion)和客服端(TortoiseSVN),安装时,建议先安装服务器端,再安装客服端(因为安装完客服端后需要重启电脑)。
二:安装完成后,创建服务器版本库:创建一个文件夹(比如:D:\\svnserver),然后右键:TortoiseSVN ----> create respository here,然后在该目录下生成六个文件(conf文件 夹、 db文件夹、hooks文件夹、locks文件夹、format文件和README.txt),其中配置文件在conf文件夹中。 其中conf文件夹下包含三个文件:authz(配置用户权限:读,写权限 等 等)、
passwd(配置用户名和密码)和svnserve.conf(svn的核心配置)。
其中:
1: passwd配置:在该文件中,创建用户的方式为: 用户名 = 密码 ,例如:创建用户名为:admin,密码为abcd,即为:admin = abcd
2: svnserve.conf配置:开启 用户访问的功能:即只需开启: password-db = passwd 即可,具体操作:把password-db = passwd 前面的#去除即可。否则其他用户不能访问。
开启 用户权限的功能:即只需开启: authz-db = authz 即可,具体操作:把authz-db = authz 前面的#去除即可。否则配置的用户权限将不生效。
3:authz 配置:找到该文件的 [groups] :在下一行:有两种方式配置权限:
(1): 权限名称 = 用户名 ,然后在相应的目录: 权限名称 = 权限(比如:rw)例如:
[groups] -- 给权限分组,有利于多个用户批量分配权限。
adm = admin -- adm 为组权限名称,类似常说的“角色”,admin为用户名,= 前后最后加上一个空格。
[/] -- / 表示svn服务器的跟目录下,当然也可以用其他的目录。比如:[/a/b/] 表示为/a/b/ 目录下分配目录权限
@adm = rw -- @表示组, adm表示组名,r表示只读,即下载功能;r表示只写,即上传功能。
(2): 直接在相应的目录下:用户名 = 权限(比如:rw) 例如:
admin = rw -- admin 为用户名,rw表示读写权限。
如果 svnserve.conf 的 authz-db = authz 不开启。则权限分配则无效。当然这样用户也是可以上传和下载的。
三:开启SVN服务:
(1):临时开启,在dos界面中输入: svnserver -d -r + svn服务器版本库目录 例如:svn版本库目录为:D:\\svnserver ,即为:
svnserver -d -r D:\\svnserver -- 注意:-d, -r ,svn服务器版本库目录中间需要用空格隔开。而一旦关闭dos界面是,svn服务器也随之关闭。
(2):永久开启:即电脑启动时自动开启svn服务器。这样需要把svn创建一个服务,然后把该服务器设置为自动启动即可。具体操作:
(i) : 创建服务:在dos界面中输入:
sc create svnserver binpath= svnserve.exe目录 --service --root svn版本库目录 -- 注意:=与svnserve.exe之间必须要加一个空格
例如svn服务器安装在:D:\J2EE\SVN\Subversion目录下
则为: sc create svnserver binpath= "D:\J2EE\SVN\Subversion\bin\svnserve.exe --service --root D:\\svnserver" -- 双引号不可缺少
然后:如果创建服务没有问题,则输入:services.msc 到电脑服务列表中会找到一个:svnserve服务。如果创建svn服务失败,则无法找到svnserve服务。
如果创建svn服务出现了问题,还可以删除svn服务。具体如: sc delete 服务名 例如: sc delete svnserver
(ii)把svnserve服务设置为自动启动。以后电脑启动时即启动svn服务器。
四: 这样svn服务器就配置好了。然后就可以在svn客服端进行各种操作了。
顺便说一下: 创建服务:sc create 服务名 binpath= 程序启动的位置 --service --root
-- 程序启动位置即:该软件启动的那个文件的位置(如:d:\xx\xxx\xxxx.exe)
删除服务:sc delete 服务名