资讯专栏INFORMATION COLUMN

svn简要介绍及服务搭建

caohaoyu / 1086人阅读

摘要:简介是一个跨平台的版本控制系统,它管理着随时间改变的各种数据,这些数据都是保存在中央资料档案库中的会备份并记录每个文件的修改更新变动,这样就可以很方便地将文件恢复到任一时间点的版本。

简介

svn是一个跨平台的版本控制系统,它管理着随时间改变的各种数据,这些数据都是保存在中央资料档案库中的;svn会备份并记录每个文件的修改更新变动,这样就可以很方便地将文件恢复到任一时间点的版本。

安装配置Svn服务 准备操作系统并查看系统环境
➜  ~  cat /etc/redhat-release 
CentOS release 5.10 (Final)
➜  ~  uname -m
x86_64
➜  ~  uname -r
2.6.18-371.11.1.el5
安装svn

首先检查svn是否已安装:

➜  ~  rpm -qa subversion
subversion-1.6.11-12.el5_10
subversion-1.6.11-12.el5_10
若未安装则执行以下命令:
➜  ~  yum -y install subversion
配置并启动svn

建立svn数据存储根目录(svndata)及用户、密码、权限目录(svnpasswd)

➜  ~  mkdir -p /application/svndata
➜  ~  mkdir -p /application/svnpasswd

启动svn

➜  ~  svnserve -d -r /application/svndata

查看svn是否启动

➜  ~  ps -ef|grep svn
root     16969     1  0 13:38 ?        00:00:00 svnserve -d -r /application/svndata
➜  ~  netstat -lntup | grep 3690
tcp        0      0 0.0.0.0:3690                0.0.0.0:*                   LISTEN      16969/svnserve      
➜  ~  lsof -i :3690
COMMAND    PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
svnserve 16969 root    3u  IPv4 147101      0t0  TCP *:svn (LISTEN)
svn相关操作 建立项目版本库

以创建项目sadoc为例:

➜  ~  svnadmin create /application/svndata/sadoc
调整svn配置文件及权限文件

配置允许用户andy读写访问

➜  ~  cd /application/svndata/sadoc/conf
➜  conf  cp svnserve.conf svnserve.conf.bak
➜  conf  vim svnserve.conf

修改如下内容:

anon-access = none  <--是否允许匿名访问
auth-access = write <--访问权限
password-db = /application/svnpasswd/passwd  <--此处一般无需修改,保持默认即可;在此为了方便统一管理于是做了相应修改
authz-db = /application/svnpasswd/authz

查看修改的内容:

➜  conf  diff svnserve.conf.bak svnserve.conf

将密码认证文件模板拷贝到svnpasswd目录下

➜  conf  cp authz passwd /application/svnpasswd

修改文件权限:

➜  conf  cd /application/svnpasswd
➜  svnpasswd  chmod 700 *

编辑配置passwd文件,在[users]下添加相关信息:

andy = andy123

注意:

等号前为svn账号,等号后为svn密码,密码是明文的,要注意密码权限

更改svnserver.conf后需要重启svn,更改authz或passwd文件后则无需重启svn

编辑配置authz文件,在[groups]下添加相关信息:

[sadoc:/]
andy = rw

注意:

权限配置文件中出现的用户名必须已在用户配置文件中定义

对权限配置文件的修改立即生效,不必重启svn

格式说明:

[groups]
# harry_and_sally = harry,sally
# harry_sally_and_joe = harry,sally,&joe

一个用户组可以包含一个或多个用户,用户间以逗号分隔。

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

[<版本库>:/项目/目录]
@<用户组名>=<权限>
<用户名>=<权限>
其中方框内部可以有多种写法:
[/]表示根目录及以下,根目录是svnserve启动时指定的,我们指定为/application/svndata,[/]就是表示对全部版本库设置权限
[repos:/]表示对版本库repos设置权限
[repos:/sadoc]表示对版本库repos中的sadoc项目设置权限
[repos:/sadoc/andy]表示对版本库repos中的sadoc项目的andy目录设置权限
权限主体可以是用户组、用户或*,用户组在前面加@,*表示全部用户
权限可以是w、r、wr和空,空表示无任何权限
authz中每个参数都要顶格写,开头不能有空格

重启svn

➜  svnpasswd  pkill svnserve
➜  svnpasswd  svnserve -d -r /application/svndata

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/15185.html

相关文章

  • svn简要介绍服务搭建

    摘要:简介是一个跨平台的版本控制系统,它管理着随时间改变的各种数据,这些数据都是保存在中央资料档案库中的会备份并记录每个文件的修改更新变动,这样就可以很方便地将文件恢复到任一时间点的版本。 简介 svn是一个跨平台的版本控制系统,它管理着随时间改变的各种数据,这些数据都是保存在中央资料档案库中的;svn会备份并记录每个文件的修改更新变动,这样就可以很方便地将文件恢复到任一时间点的版本。 安装...

    MiracleWong 评论0 收藏0
  • Linux (CentOS 7 )下搭建局域网SVN服务器+SVN权限配置

    摘要:准备公司内部需要配置局域网,需要在在内部虚拟机服务器搭建,搭建过程做个记录,供参考。即为可读可写,为只读,表示无访问权限。缺省值指定权限配置文件名,通过该文件可以实现以路径为基础的访问控制。 准备 公司内部需要配置局域网SVN,需要在在内部虚拟机服务器搭建,搭建过程做个记录,供参考。注:如果条件允许,尽量在windows下搭建svn服务器,很省事,尤其是权限配置非常方便又易懂,效果相同...

    elva 评论0 收藏0
  • Linux (CentOS 7 )下搭建局域网SVN服务器+SVN权限配置

    摘要:准备公司内部需要配置局域网,需要在在内部虚拟机服务器搭建,搭建过程做个记录,供参考。即为可读可写,为只读,表示无访问权限。缺省值指定权限配置文件名,通过该文件可以实现以路径为基础的访问控制。 准备 公司内部需要配置局域网SVN,需要在在内部虚拟机服务器搭建,搭建过程做个记录,供参考。注:如果条件允许,尽量在windows下搭建svn服务器,很省事,尤其是权限配置非常方便又易懂,效果相同...

    TesterHome 评论0 收藏0
  • Ubuntu 下 SVN 多版本库的搭建

    摘要:一简介简称是一个自由开源的版本控制系统。目前,已成为主流的开源代码版本管理软件之一。六验证访问版本库地址参考服务器在下搭建多版本库详细教程恒久力行 一、简介 Subversion(简称SVN)是一个自由开源的版本控制系统。Subversion将文件存放在中心版本库里,这个版本库很像一个普通的文件服务器,不同的是,它可以记录每一次文件和目录的修改情况,这样就可以借此将数据恢复到以前的版本...

    Tikitoo 评论0 收藏0
  • Eclipse启动后报“Decoration Calculation”并异常崩溃问题分析解决办法

    摘要:第二次出现问题更不幸的是,后面有一次导入公司新的工程,也出现同样的问题了。三解决办法因为问题解决的过程却是有点曲折心酸,所以前面的问题分析有点长,简要说明一下解决办法,具体如下确认的导入识别情况。 一、问题现象 我像往常一样导入ClearCase(类似SVN)中导入公司新的工程进行开发,导入后没多久Eclipse就开始弹框报错,报错截图如下: showImg(https://segme...

    fireflow 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<