前面已经讲过了linux系统的安装,
在此前提下:
安装subversion
apt-get install subversion
apt-get install libapache2-svn
增加用户和组
vi /etc/group
subversion:x:1001:www-data,exp,mocci,musaglas
建立SVN目录
mkdir /home/mocci/svn
cd /home/mocci/svn
sudo mkdir myprojects
更改文件所属者
chown -R mocci:subversion myprojects
更改文件操作权限
chmod -R ug+rwxs myprojects
建立SVN数据仓库
svnadmin create /home/mocci/svn/myprojects
配置apache
设定dav_svn启动(注:情况不同,可以不用加载)
修改/etc/apache2/httpd.confLoadModule dav_module /usr/lib/apache2/modules/mod_dav.so
LoadModule dav_svn_module /usr/lib/apache2/modules/mod_dav_svn.so
/etc/apache2/mods-available/dav_svn.conf
DAV svn
SVNPath /home/mocci/svn/myprojects
AuthType Basic
AuthName "mux's myprojects"
AuthUserFile /etc/subversion/passwd
Require valid-user
增加apache用户
htpasswd -c /etc/subversion/passwd mocci
输入密码
htpasswd -m /etc/subversion/passwd musaglas
输入密码
apache设置完成,重起apache
/etc/init.d/apache2 restart
下面设置CVS的用户权限
在myprojects/conf/svnserve.conf
把注释去掉
增加用户,更改passwd
mocci=******
musaglas=******
赋予权限,更改authz
[/]
*=r
[myprojects:/]
mocci=rw
musaglas=rw
配置完成!
下面测试一下。
Subversion社区建议为每一个项目建立一个项目根目录—项目的“顶级”目录—然后在根目录下建立三个子目录:trunk
,保存项目的开发主线;branches
,保存项目的各种开发分支;tags
,保存项目的标签,也就是创建后永远不会修改的分支(可能会删除)。
建立新文件夹
mkdir tmpdir
cd tmpdir
mkdir projectA
mkdir projectA/trunk
mkdir projectA/branches
mkdir projectA/tags
mkdir projectB
mkdir projectB/trunk
mkdir projectB/branches
mkdir projectB/tags
svn import -m "注释" . http:///svn/myprojects
如果执行成功则:
Adding projectA
…
Transmitting file data .........
Committed ....
也可以用命令,来查看导入的情况
svn list --verbose file:///svn/myprojects
1 mocci ..... projectA/
1 mocci ..... projectB/
…
http://192.168.12.157/myprojects/mxcrm/trunk/src