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. C#的逆变和协变

    out: 输出(作为结果),in:输入(作为参数) 所以如果有一个泛型参数标记为out,则代表它是用来输出的,只能作为结果返回,而如果有一个泛型参数标记为in,则代表它是用来输入的,也就是它只能作为参 ...

  2. BZOJ 1455: 罗马游戏 [可并堆]

    1455: 罗马游戏 Time Limit: 5 Sec  Memory Limit: 64 MBSubmit: 1715  Solved: 718[Submit][Status][Discuss] ...

  3. .Net普通三层 到 工厂模式->线程内唯一+单元工作模式->WebService分布式三层

    在软件世界分层的思想无处不在 主要是为了提高软件系统的维护性,扩展性,复用性和解耦等 软件的三层构架是一种最基本的分层思想的体现 结构图大体如下: 如此一来,开发人员可以只关注其中一层,而无需关心下一 ...

  4. nginx 判断访问文件或目录不存在rewrite

    文件及目录匹配,其中:* -f和!-f用来判断是否存在文件* -d和!-d用来判断是否存在目录* -e和!-e用来判断是否存在文件或目录* -x和!-x用来判断文件是否可执行样例 : 判断访问的图片是 ...

  5. javascript-变量-作用域

    1.var message;   ----这样定义的变量值为undefined 2.去掉var则为全局变量--message = “100”: 3.function fun(){ var messag ...

  6. osx c++连接mysql

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

  7. YII 1.0 发表文章用到的小物件

    <?php $form = $this->beginWidget('CActiveForm',array('htmlOptions'=>array('enctype'=>'mu ...

  8. 在Delphi中隐藏程序进程

    在开发某些软件的时候,为了保护程序自身,就需要用到隐藏程序进程.以下通过实例来讲解隐藏程序进程的方法: 1.创建一个新的项目 Project1 选择File,New Application.在表单Fo ...

  9. xhtmlrenderer渲染pdf,中文换行

    在实际开发中,发现在table中显示中文,渲染出来的pdf,中文内容不自动换行.经过搜索发现了一种解决方案,如下: 重写Breaker,修改right计算方式 /* * Breaker.java * ...

  10. easyUI linkbutton组件

    easyUI linkbutton组件: <!DOCTYPE html> <html lang="en"> <head> <meta ch ...