原来一直主要用sourcesafe,其实蛮好用的。只是这个东东天生缺陷大,要么用共享文件夹---极为不爽,要么就得用http--速度极慢,不知是不是我们项目太大---,而且还占用一个网站。
于是弄一个subversion 服务器,我原来都是在本机使用subversion没怎么关注用户与权限控制。
这里是subversion服务器安装管理笔记,btw svnbook.pdf 实在够厚,400多页,不容易读通。
要使用subversion最少需要二个软件
- TortoiseSVN 我最新下载的是TortoiseSVN-1.5.8.15348-win32-svn-1.5.5.msi,不过又好象出1.6了 这是客户端软件,同时还可以管理
- 服务器端我用的是CollabNetSubversion-server-1.5.6-2.win32.exe
安装其实很简单:
首先安装CollabNetSubversion-server-1.5.6-2.win32.exe
1)要注意几点,你需要设置好你的svn仓库目录,如d:\data\svn_repository,端口默认3690
2)一般而言,你可以不安装apache,这东东对于我来说,还用不上,也不愿意用(http访问速度慢),干脆就不用装了
安装完成后,你到windows服务管理中可以找到subversion服务,启动他,你可以看到他的命令行可能如下:
"d:\soft\CollabNetSubversionServer\svnserve.exe" --service -r "d:\data\svn_repository" --listen-port "3690"
3)安装好TortoiseSVN。
4)下面是我的使用惯例
a)打开d:\data\svn_repository
b)建立一个目录,如“某某项目“,这里我们用代号"project_a",当然目录可以是中文名也可以是英文名。
建立一个目录,如”某工程“,这里我们用代号“prj_b"
到目录 d:\data\svn_repository\project_a ,点右键,使用 TortoiseSVN 的“create repository here"
到目录 d:\data\svn_repository\某工程 点右键,使用 TortoiseSVN 的“create repository here"
这样我们就已经创建了二个项目
用
svn://localhost/project_a (或svn://ip地址/project_a)及 svn://localhost/某工程 你就会发现已经有二个svn可以管理的仓库了。
当然你可以试一个 svn://localhost/ 你就会发现提示“No repository found in ..."
c)在目录d:\data\svn_repository 创建一个passwd
内容为
[users]
usera=passwd-a
userb=passwd-b
d)在目录d:\data\svn_repository创建文件:svnserve.conf
内容为
[general]
anon-access =none
auth-access = write
password-db = ../../passwd
authz-db = authz
并将其分别复制到
d:\data\svn_repository\某工程\conf 及d:\data\svn_repository\project_a\conf 目录(覆盖文件)
e)修改d:\data\svn_repository\project_a\conf\authz 文件
内容
[/]
usera=rw
*=
f)修改d:\data\svn_repository\某工程\conf\authz 文件
内容
[/]
userb=rw
*=
这样你就会发现
usera只能读写 project_a
而userb只能读写"某工程“
总结:
这样做的目的
1)必须要有密码与用户名才可以读写
2)所有项目的用户与密码都由同一个文件管理
3)不同的项目及目录都可以设置不同的用户及相应的权限