web服务器
技术随笔
linux SVN服务器创建版本库 , svn 启动 , svn 重新启动,svn 关闭
一、安装与建库
1、安装 svn 服务(CentOS/RedHat):
yum install subversion2、新建一个目录统一存放所有版本库:
mkdir -p /opt/svn/svndata/3、为项目 project_1 创建一个版本仓库:
svnadmin create /opt/svn/svndata/chengxudaren执行后,/opt/svn/svndata/chengxudaren/ 下会生成 conf、db、hooks 等目录,项目的所有配置都在 conf/ 中。
二、配置权限
(1)svnserve.conf 主配置文件:
vi /opt/svn/svndata/chengxudaren/conf/svnserve.conf
anon-access = read # 匿名可读
auth-access = write # 验证用户可读写
password-db = passwd # 用户名密码文件
authz-db = authz # 权限配置文件注意:每一行前方绝对不能有空格,否则会报 Option expected 错误!
(2)passwd 用户名密码文件:
vi /opt/svn/svndata/chengxudaren/conf/passwd
[users]
manager1 = 123456
manager2 = 123123
manager3 = 888888每一行都是“用户名=密码”的格式。
(3)authz 用户权限文件:
vi /opt/svn/svndata/chengxudaren/conf/authz
[groups]
managers = manager1,manager2 # 定义群组
[/]
@managers = rw # 群组有读写权限
manager3 = r # manager3 只读
* = # 其余用户无任何权限配置中出现 Invalid authz configuration 的解决:常见原因是 [/] 写成了 [/] 之后又在前面加了多余缩进/换行,保证 [/] 单独成行、前面无空格即可。
三、启动 / 重启 / 关闭
启动前先看是否已运行:
ps -ef | grep svnserve # 查看是否已有 svnserve 进程
killall svnserve # 若已启动,先关闭所有进程
svnserve -d -r /opt/svn/svndata/ # 以守护模式启动指令说明:-d 以守护进程方式运行,默认监听 3690 端口;-r 指定 svn 服务根目录,这样客户端可用相对路径访问,而不必写完整路径。可用 --listen-port 3688 指定其它端口、--listen-host 指定监听地址。需要多个版本库时,可启动不同端口:
svnserve -d --listen-port 3688 -r /static/检查端口是否监听:
netstat -ntlp | grep 3690
# tcp 0 0 0.0.0.0:3690 0.0.0.0:* LISTEN 15087/svnserve四、检出(checkout)到网站根目录
svn checkout svn://182.92.186.23/chengxu /path/to/webroot
# 简写
svn co svn://182.92.186.23/chengxu /path/to/webroot分支检出示例(红色为版本库路径,蓝色为本地检出目录):
svn co svn://115.28.46.188/fsc/branch/branch_fsc_area /alidata/www/testshop.ftosc.com执行后按提示输入 passwd 中配置的用户名与密码即可。首次检出会提示是否明文保存密码,输入 yes/no 即可。
相关阅读:svn 错误代码详解、svn 操作命令大全。