`

centos6.0 配置SVN

svn 
阅读更多

http://blog.csdn.net/tonysz126/article/details/7454528

基本步骤:
1、安装必需的subversion
2、创建版本库
3、配置用户和权限
4、钩子和svn常用命令说明

一、安装subversion
在这里我们使用yum来安装subversion,使用以下命令即可完成。

[root@localhost ~]# yum -y install subversion 

二、创建版本库

[root@localhost ~]# mkdir -p /home/svn/project01
[root@localhost ~]# svnadmin create /home/svn/project01

三、版本库管理配置
进行刚才创建的版本库目录下的conf目录,可以看到有三个文件。

[root@localhost ~]# cd /home/svn/project01/conf
[root@localhost conf]# ls
authz  passwd  svnserve.conf

svnserve.conf 这个是版本库的配置文件
passwd 这个是记录用户帐号密码的文件
authz 这个则是记录组、权限和身份验证的文件
1、配置svnserve.conf文件
这里需要设置以下几处
anon-access = none 指定匿名权限,默认为可读,现设置匿名无权限
auth-access = write 用户有写权限
password-db = passwd 账号密码文件的路径,psswd文件也可复制一份,命名为 passwd.conf 这样可以知道是配置文件,也可以放到其它目录下
authz-db = authz 同上
注意去掉#注释以后配置一定要顶格写,下同。

[root@localhost conf]# vi svnserve.conf
anon-access = none
auth-access = write
password-db = passwd
authz-db = authz

2、配置passwd
该文件中记录svn用户名密码,以 (帐号 = 密码)或 (帐号 : 密码)的形式进行储存。
多用户之前用换行区分。这里配置了一个用户名为test1密码为123456的svn 账户。

[root@localhost conf]# vi passwd
### This file is an example password file for svnserve.
### Its format is similar to that of svnserve.conf. As shown in the
### example below it contains one section labelled [users].
### The name and password for each user follow, one account per line.

[users]
# harry = harryssecret
# sally = sallyssecret
test1 = 123456

3、authz文件的配置
[groups]表用于用户组的配置例如
“developers = test1,test2”这样就将这2个用户方在了developers组织之中。
建立组是为了方便给一组相同权限的用户分配权限。
[/] 指定是svn的根版本库
版本库目录格式:
[<版本库>:/项目/目录]
@<用户组名> = <权限>
<用户名> = <权限>

[root@localhost conf]# vi authz

[groups]
# harry_and_sally = harry,sally
# developers = test1, test2

# [/foo/bar]
# harry = rw
# * =

# [repository:/baz/fuz]
# @harry_and_sally = rw
# * = r
[/]
test1 = rw
* =

这样svn版本库就算配置完成了。

运行 svn, (停止SVN服务器命令为:killall svnserve )

[root@localhost ~]# svnserve -d -r /home/svn/

我们继续说下其他常用的一些配置
1、开机自动运行
在/etc/rc.d/rc.local 添加 “/usr/bin/svnserve -d -r svn版本库目录” 即可

[root@localhost ~]# vi /etc/rc.d/rc.local

#
# This script will be executed *after* all the other init scripts.
# You can put your own initialization stuff in here if you don't
# want to do the full Sys V style init stuff.

touch /var/lock/subsys/local
/usr/bin/svnserve -d -r /home/svn/

2、钩子自动更新
说明,在开发时经常需要提交代码,如果使用钩子自动更新的话,只要有人提交后就能自动更新到服务器上,非常方便哦。
首先必须对代码目录checkout

[root@localhost ~]# cd /var/www
[root@localhost www]# svn checkout svn://192.168.1.100/project01
Authentication realm:  21d46c22-96a8-465b-9d0b-58a1e04abdfd
Password for 'root':
Authentication realm:  21d46c22-96a8-465b-9d0b-58a1e04abdfd
Username: test1
Password for 'test1':
Checked out revision 0.

这样在 /var/www/ 中会生成一个目录 project01,我们可以把这个目录设置成站点来访问。

进入版本库hooks目录
将post-commit.tmpl 模板复制一份 取名post-commit
在末尾加上
svn up /home/svn/project01/ –username test1 –password 123456
并赋予执行权限。

[root@localhost ~]# cd /home/svn/project01/hooks/
[root@localhost hooks]# ls
post-commit.tmpl  post-revprop-change.tmpl  pre-commit.tmpl  pre-revprop-change.tmpl  start-commit.tmpl
post-lock.tmpl    post-unlock.tmpl          pre-lock.tmpl    pre-unlock.tmpl
[root@localhost hooks]# cp post-commit.tmpl  post-commit
[root@localhost hooks]# vim post-commit

REPOS="$1"
REV="$2"

svn up /home/svn/project01/ --username test1 --password 123456

[root@localhost hooks]# chmod +x post-commit

这样当用户提交文件的第时候,svn将会自动执行更新,使代码同步。

分享到:
评论

相关推荐

    centos6.0配置本地yum

    ### CentOS 6.0 配置本地 YUM 源详解 #### 一、YUM 源简介 在 CentOS 6.0 系统中,YUM(Yellow dog Updater Modified)是一款强大的包管理器工具,它允许用户在基于 RPM 的 Linux 发行版上自动下载、更新和安装...

    centos6.0安装

    CentOS 6.0 安装教程 CentOS 6.0 是目前 CentOS 家族最新版的服务器系统,本教程将带您一步步完成 CentOS 6.0 的安装过程。 一、前提条件 * 一张 Linux CentOS 6.0 光盘或者 ISO 镜像文件 二、安装步骤 1.1、...

    CentOS-6.0-x86_64-bin-DVD.torrent

    centos6.0种子文件 操作系统下载

    CentOS6.0安装Oracle10g详细文档

    本文档详细介绍了如何在CentOS6.0操作系统上安装Oracle10g,这是一个非常实用的技术教程,尤其适合那些希望在最新版本的Linux发行版上部署旧版本Oracle数据库的用户。 首先,让我们深入了解CentOS6.0。这是一个基于...

    CentOS 6.0安裝gcc

    ### CentOS 6.0 安装GCC 在Linux系统中,GCC(GNU Compiler Collection)是一个重要的编译器套件,支持多种编程语言如C、C++等。对于开发者来说,安装...希望本文能够帮助到需要在CentOS 6.0上安装和配置GCC的读者。

    Centos6.0安装lamp

    至此,我们已经完成了在Centos 6.0上安装LAMP环境及配置 PhpMyAdmin 的过程。通过这些步骤,你可以轻松搭建一个功能完备的Web开发环境。 **参考资料**:[http://down.chinaz.com/server/201109/1064_1.htm]...

    VMware10安装CentOS-6.0.docx

    总结,VMware 10安装CentOS 6.0的过程涉及到虚拟机的创建、配置、ISO映像加载以及操作系统安装等步骤。这个过程有助于理解虚拟化技术和Linux系统的运行机制,同时也是一个实用的技能,无论是在学习还是工作中都非常...

    CentOS6.0安装Oracle

    ### CentOS6.0安装Oracle详解 #### 工具准备与远程连接 在开始安装Oracle之前,需要准备一些必要的工具,以便于文件传输和远程管理。本文档提到了两个关键工具:FileZilla和Putty。 - **FileZilla**:这是一款...

    CentOS 6.0安装图解教程

    **CentOS 6.0 安装步骤详解** 在安装 CentOS 6.0 时,首先需要通过光盘或U盘成功引导系统。引导过程的关键在于如何选择合适的启动模式。当系统加载时,按下键盘上的 ESC 键,会出现 `boot:` 提示符,此时输入 `...

    CentOs6.0下安装Oracle11g

    很多做服务器的程序员都因为在linux下安装linux而头痛不已,确实是很麻烦的一件事,此文档讲解了在CentOs6.0下安装Oracle11g的详细步骤,希望能帮到大家。

    centos6.0配置lamp+yaf环境配置

    在本文中,我们将深入探讨如何在CentOS 6.0操作系统上配置LAMP(Linux、Apache、MySQL、PHP)环境,并进一步集成Yaf(Yet Another Framework)框架。这个过程是为那些想要在Linux服务器上搭建PHP应用平台并利用Yaf...

    centos6.0安装配置教程.doc

    centos6.0安装配置教程.doc

    CentOS 6.0 VNC远程桌面配置

    CentOS 6.0 VNC远程桌面配置 本文将指导读者如何在 CentOS 6.0 系统中配置 VNC 远程桌面,以便用户可以通过 VNC 客户端远程连接到 Linux 系统的图形界面。 一、VNC 服务器安装和配置 1. 检查 Linux 系统是否安装 ...

    XP下硬盘安装CentOS 6.0

    ### XP下硬盘安装CentOS 6.0 的详细步骤与要点 #### 一、背景介绍 在不具备光驱、U盘、移动硬盘等外部存储设备的情况下,并且主板不支持U盘启动时,如何在Windows XP操作系统下安装CentOS 6.0?本文将详细介绍这一...

    U盘安装CentOS 6.0

    U盘安装CentOS 6.0 实现目的:用U盘安装CentOS 6.0到服务器 工具软件: 1、U盘一只,我这里用到的是“朗科(Netac)USB3.0高速优盘 U903 16G” 2、CentOS 6.0系统镜像,我这里下载的是32位的系统CentOS-6.0-i386-...

    CentOS 6.0下vncserver安装配置

    CentOS 6.0 下 vncserver 安装配置 Centos 6.0 下 vncserver 安装配置是一种远程桌面连接解决方案。通过安装和配置 vncserver,可以实现在服务器上远程桌面连接,提高工作效率和灵活性。 一、安装必要的软件包 ...

    CentOS 6.0安装指南

    ### CentOS 6.0 安装与配置指南 #### 一、引言 CentOS 6.0 是一款基于 Red Hat Enterprise Linux (RHEL) 的开源操作系统,它提供了企业级的功能和服务,同时又免费可用。本文档旨在为用户提供一套完整的 CentOS ...

    centos 6.0安装MySQL mysql-5.1.59全过程

    通过以上步骤,您可以在CentOS 6.0系统上成功安装并配置MySQL 5.1.59版本。请注意,实际操作过程中可能遇到各种问题,如权限问题、依赖问题等,需要根据具体情况进行调试解决。此外,在正式环境中部署MySQL时,还...

Global site tag (gtag.js) - Google Analytics