码迷,mamicode.com
首页 > 系统相关 > 详细

Ubuntu系统上SVN服务器的安装和配置

时间:2016-05-07 09:40:35      阅读:182      评论:0      收藏:0      [点我收藏+]

标签:

Ubuntu系统上SVN的安装和配置

1、安装

#sudo apt-get install subversion

2、创建版本库

#sudo mkdir /home/svn
#sudo svnadmin create /home/svn/suc

3、进入版本库修改相关配置文件

#cd /home/svn/suc/
#dir

conf db format hooks locks README.txt
我们主要关心的是conf和db文件,conf文件夹下是存放主配置文件和用户、权限位置,db文件夹是存放svn转储后的数据。

#cd conf/
#dir

authz hooks-env.tmpl passwd svnserve.conf
authz文件是设置用户权限,passwd文件是存储用户及密码,svnserve.conf是主配置文件,先配置主配置文件。

配置版本库

# sudo vi svnserve.conf  

将以下参数去掉注释
[general]
anon-access = none #匿名访问权限,默认read,none为不允许访问
auth-access = write #认证用户权限
password-db = passwd #用户信息存放文件,默认在版本库/conf下面,也可以绝对路径指定文件位置
authz-db = authz

# sudo vi passwd

格式是用户名=密码,采用明文密码
[users]
testname = testpassword

# sudo vi authz 

[groups] #定义组的用户
manager = testname
[/]
@manager = rw

4、启动svn服务

# sudo svnserve -d -r /home/svn

查看是否启动成功,可看的监听3690端口

# sudo netstat -antp |grep svnserve

tcp 0 0 0.0.0.0:3690 0.0.0.0:* LISTEN
如果想关闭服务,可使用pkill svnserve

5、将服务器上代码目录同步到本地目录

#sudo svn checkout svn://*******/suc –username testname --password testpassword

不指定同步到本地目录(/svn)默认是当前目录,也可以不指定用户名和密码,需要手动输入。或使用简写sudo svn co svn://…/suc

6、更新代码到最新版本

将代码目录所有文件更新到最新版本

#svn update

将某个文件还原到某个版本

svn update -r 50 filename 

50是修订版号

7、实现svn自动更新web服务器

先在web服务器目录下checkout当前版本,然后在svn项目的hooks文件夹中的post-commit文件中添加脚本:用vi命令编辑一个新的post-commit(看清楚没有后缀名)千万不要用hooks文件夹里自带的post-commit文件。

#cd /home/svn/suc/hooks
#sudo vi post-commit

在文件中添加如下内容:

#!/bin/sh
REPOS="$1"
REV="$2"
WEB=/var/www/suc   //web服务器下的项目不能有空格。
export LANG=en_US.UTF-8
svn update $WEB --username testname --password testpassword

然后给这个文件赋给执行的权限

# sudo chmod +x post-commit

本博客内容来源于网上搜索以及自己实践,仅供参考

Ubuntu系统上SVN服务器的安装和配置

标签:

原文地址:http://blog.csdn.net/fang_zefeng/article/details/51332603

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!