Linux下SVN服务器搭建配置

1.SVN服务安装

yum install subversion

2.创建SVN代码仓库

mkdir /data/svn
svnadmin create /data/svn/repo

3.配置svn帐户

cd /data/svn/repo/conf
vi passwd
增加一行(svn帐户,密码)
admin 123456
test 123456

4.SVN权限控制

目的是设置哪些用户可以访问哪些目录,向authz文件追加以下内容:

[groups]            #组
admin = admin #创建一个admin组,将用户加入到组 [/] #根目录权限设置(就是“svn”这个文件夹)
admin = rw #admin对svn下的所有版本库有读写权限 [repo:/] #repo:/,表示对repo版本库下的所有资源设置权限
@admin = rw #admin组的用户对repo版本库有读写权限
test =r [repo2:/occi] #表示对版本库repo2中的occi项目设置权限 [repo2:/occi/aaa] #表示对版本库2中的occi项目的aaa目录设置权限  
#权限主体可以是用户组、用户或*,用户组在前面加@,*#表示全部用户。权限可以是w、r、wr和空,空表示没有任何权限。
#以上语句都必须顶格写, 左侧不能留空格, 否则会出错.

5.配置svn服务

vi svnserver.conf

追加以下内容

[general]
#匿名访问的权限,可以是read,write,none,默认为read
anon-access = none
#使授权用户有写权限
auth-access = write
#密码数据库的路径
password-db = passwd
#访问控制文件
authz-db = authz
#认证命名空间,subversion会在认证提示里显示,并且作为凭证缓存的关键字
realm = /data/svn/repo

以上语句都必须顶格写, 左侧不能留空格, 否则会出错.

6.iptable防火墙配置

vi /etc/sysconfig/iptables
增加
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3690 -j ACCEPT
保存退出
重启防火墙
service iptables restart

7.启动SVN服务

rpm -ql subversion
查看SVN安装bin目录,默认/usr/bin
cd /usr/bin
启动SVN
./svnserve -d -r /data/svn/ #指定SVN根目录 查看是否启动
ps -ef |grep svn
root 17270 1 0 11:06 ? 00:00:00 ./svnserve -d -r /data/svn/
root 17272 1 0 11:06 ? 00:00:00 grep --color=auto svn 如果已经有svn在运行,可以换一个端口运行
./svnserve -d -r /data/svn/ --listen-port 3391

8.查看SVN端口

netstat -ntlp |grep svn

tcp        0      0 0.0.0.0:3690            0.0.0.0:*               LISTEN      17270/./svnserve

9.停止SVN

kill 进程号

10.使用import导入文件

svn import /mnt/ file:///data/svn/repo/-m "注释"

11.checkout导出文件

svn checkout svn://127.0.0.1/repo

注意!密码只能明文保存在磁盘上! 如果可能的话,请考虑配置你的系统,让 Subversion 可以保存加密后的密码。请参阅文档以获得详细信息。

你可以通过在“/root/.subversion/servers”中设置选项“store-plaintext-passwords”为“yes”或“no”,来避免再次出现此警告。

编辑vim /root/.subversion/servers

找到下行去掉#号将on改为yes,

store-plaintext-passwords = no

其他遇到的问题

svn: Can't convert string from 'UTF-8' to native encoding

解决办法很简单,正确设置当前系统的 locale:

export LC_CTYPE="zh_CN.UTF-8"
注意,根据你的系统字符集设置变量,如果 zh_CN.UTF-8 不行,有可能要改成 GB2312:
export LC_CTYPE="zh_CN.GB2312"
另外,看别人的帖子,有的变量名不同,用的是:
export LANG="zh_CN.UTF-8"

若设置之后出现

svn: warning: cannot set LC_CTYPE locale
svn: warning: environment variable LC_CTYPE is zh_CN.GB2312
svn: warning: please check that your locale name is correct

解决方法很简单,修改/etc/profile:

sudo vi /etc/profile
加入一行:
export LC_ALL=C

source /etc/profile

到此,SVN服务端就配置完成了

Linux下SVN服务器搭建配置的更多相关文章

  1. Linux 下 SVN服务器搭建

    使用Linux(CentOS)搭建SVN服务器全攻略 虽然在windows上搭建SVN很简单,但是效能却不高,这当然是和linux相比了.然而在linux上搭建SVN却非常繁琐,所以今天这篇文章就来一 ...

  2. Linux下svn服务器搭建

    初次在linux上搭建svn服务器,本来以为很繁琐,其实很简单,主要分为以下几个步骤: 1.  首先安装subversion,命令:yum install subversion 2.  创建svn仓库 ...

  3. Linux 下SVN服务器搭建

    系统环境        RHEL5.4最小化安装(关iptables,关selinux) + ssh + yum 一,安装必须的软件包.  yum install subversion (SVN服务器 ...

  4. Linux下SVN服务器搭建(CentOS+Subversion)--转

    svn(subversion)是近年来崛起的版本管理工具,是CVS的接班人.目前,绝大多数开源软件都使用svn作为代码版本管理软件.svn 服务器有2种运行方式:独立服务器和借助apache等web服 ...

  5. linux下svn服务器搭建步骤

    安装步骤如下: 1.yum install subversion 2.输入rpm -ql subversion查看安装位置,如下图:   我们知道svn在bin目录下生成了几个二进制文件. 输入 sv ...

  6. Linux centos7 下 svn 服务器搭建

    摘自:https://www.cnblogs.com/mymelon/p/5483215.html 鉴于在搭建时,参考网上很多资料,网上资料在有用的同时,也坑了很多人 本文的目的,也就是想让后继之人在 ...

  7. linux 中 svn 服务器搭建 重启

    鉴于在搭建时,参考网上很多资料,网上资料在有用的同时,也坑了很多人 本文的目的,也就是想让后继之人在搭建svn服务器时不再犯错,不再被网上漫天的坑爹作品所坑害,故此总结 /******开始****** ...

  8. Windows下SVN服务器搭建方法整理(apache)

    http://skydream.iteye.com/blog/437959 http://www.cnblogs.com/liuke209/archive/2009/09/23/1572858.htm ...

  9. Linux下dns服务器搭建

    Linux下dns服务器搭建1-环境Red Hat Enterprise Linux Server release 6.7 (Santiago)2-配置本地yum源安装dns相关包yum -y ins ...

随机推荐

  1. Thinking in scala (2)---- 最大公约数

    gcd.scala object gcd{ def main(args:Array[String]){ println( gcd1(args(0).toInt,args(1).toInt)) prin ...

  2. foreach笔记

    结合泛型使用,不然就只能写成for(Object o : T). 缺点是没有下标,如下面代码 public class ForeachTest { public static void main(St ...

  3. CSS十问

    CSS十问——好奇心+刨根问底=CSSer   最近有时间,想把酝酿的几篇博客都写出来,今天前端小学生带着10个问题,跟大家分享一下学习CSS的一些体会,我觉得想学好CSS,必须保持一颗好奇心和刨根问 ...

  4. C# new和override的区别

    浅析C# new和override的区别 C#中new和override是继承中经常用到的两个关键字,但是往往有时候容易把这两个关键字的作用搞混淆. new C# new关键字表示隐藏,是指加上new ...

  5. UVa 10653 - Bombs! NO they are Mines!!

    题目大意:给你一个二维迷宫,给定入口和出口,找出最短路径. 无权图上的单源最短路,用BFS解决. #include <cstdio> #include <queue> #inc ...

  6. UVa 10523 - Very Easy !!!

    题目大意:给你一个公式,直接按照式子计算就可以了,要用到大数. import java.io.*; import java.util.*; import java.math.*; class Main ...

  7. UVa 594 - One Little, Two Little, Three Little Endians

    题目大意:大小端模式的转换.所谓的小端模式,是指数据的高位保存在内存的高地址中,而数据的低位保存在内存的低地址中.与此相对,所谓的大端模式,是指数据的高位,保存在内存的低地址中,而数据的低位,保存在内 ...

  8. AndroidManifest.xml文件

    AndroidManifest.xml常用标签解读 1.全局篇(包名,版本信息) 2.组件篇(四大组件) Activity Service Content Provider Broadcast Rec ...

  9. osx c++连接mysql

    最近想尝试一下使用c++连接mysql数据库.使用封装过后的mysql库mysql++访问mysql数据库更加简单,下述讲述的是如何在osx上搭建连接mysql的环境. 首先需要安装mysql++,感 ...

  10. cpsr当前程序状态寄存器

    详解CPSR寄存器(ls_core) (2012-10-11 17:29:47) 转载▼ 标签: arm920t寄存器 cpsr cpu工作原理 分类: 第四章-踏入嵌入式领域之ARM 在介绍CPSR ...