一、搭建svn环境
- 检查本地是否已经安装Subversion
#查看是否已经安装svn
rpm -qa | grep subversion
- 安装Subversion
yum install -y subversion
- 检测是否安装成功(查看svn版本号)
svnserve --version
二、创建用户及版本库
- 创建用户及版本库
cd /home/
#创建svn版本库根目录,用于存放各类的版本库
mkdir svn
cd svn
svnadmin create /home/svn/svn_library
cd svn_library
ls #会看到自动生成的版本库文件
#conf db format hooks locks README.txt
- 创建用户组及用户
cd conf/
vim passwd
#在passwd中如下位置增加用户testuser,密码为123456
[users]
# harry = harryssecret
# sally = sallyssecret
testuser = 123456
testuser2 = 123456
#给用户进行分组及分配权限
vim authz
#给用户分组
new_groups = testuser,testuser2
#分配权限【版本库svn_library下所有路径的读写权限】
[svn_library:/]
* = r #除了以下组和用户的其他用户只有指定的r权限,为空表示无权限
@new_groups = rw
#配置SVN服务综合配置文件svnserve.conf
vim svnserve.conf
#找到以下配置项,将前面的#号去掉,然后做相应的配置
anon-access = none #匿名用户访问权限:无
auth-access = write #普通用户访问权限:读、写
password-db = passwd #密码文件
authz-db = authz #权限配置文件
realm = /home/svn/svn_library #版本库所在路径
- 启动svn服务
#查看svn服务详情
ps aux | grep svn
#将svn服务强制停止 其中790为svn服务的ID号,-9是kill的参数
kill -9 790
#或者用
killall svnserve
#再运行 svnserve -d -r /home/svn,进行启动服务
svnserve -d -r /home/svn 注意,启动svn版本库的时候注意,不要指定到版本库目录里面去了,不然权限无效
- 测试
cd /home/www
svn co svn://localhost/svn/svn_library
cd /home/www
touch index.php
svn add index.php #成功的话会显示 A index.php
svn commit index.php -m "测试提交文件"
#假如最后提示:
#Adding index.phpTransmitting file data .Committed revision
其他
#问题:之前用的svn账号权限不够,需要使用别的账号,所以提出需求——怎么使用新的svn账号进行操作
#方法一:
#linux下删除~/.subversion/auth即可清除之前的用户名和密码:
rm -rf ~/.subversion/auth
#以后再操作svn会提示你输入用户名,这时就可以使用新的了
#方法二:
#svn操作时带上--username参数,比如
svn --username=smile co svn_path local_path