svn不仅仅可以用于程序开发,还可以做很多事情,例如备份文档。

CentOS下:安装

yum install -y subversion

Ubuntu下:

sudo apt-get install subversion

检查是否安装成功

svnserve --version

建立项目

mkdir -p ~/svn            //建立svn根目录,用于存放多个项目,其中“~”表示home目录

新建项目proj1

mkdir -p ~/svn/proj1  //其中-p表示没有父目录则新建 svnadmin create ~/svn/proj1

命令完成后,会在proj1目录下生成相应的文件和文件夹:

再建立1个项目proj2

mkdir-p ~/svn/proj2 svnadmin create ~/svn/proj2

配置SVN

将proj1/conf下的authz、passwd和svnserve.conf拷贝至~/svn/根目录下,结果如下所示:

添加用户

注意:不需要在linux中添加用户

vi ~/svn/passwd,添加形如“username=password”的条目即可

权限控制

用于设置哪些用户可以访问哪些目录

vi ~/svn/authz,添加

[groups]
admin=test1 devteam1=test2,test3 //开发组一 devteam2=test4   [/]
@admin=rw *=
[proj1:/]
@devteam1=rw [proj2:/]
@devteam2=rw

注: 此处的用户名必须是“passwd”文件中已经定义的用户名

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

*=表示除了有权限的用户之外,其他任何人都禁止访问本目录。

进入proj1/conf,配置svnserve.conf(左侧不能留空格),让用户和权限控制策略生效

[general] anon-access=none  # 使非授权用户无法访问 auth-access=write#使授权用户有写权限  password-db=~/svn/passwd#密码文件  authz-db=~/svn/authz#访问控制文件

以后建立的其它项目可以直接使用此配置,如:

cp ~/svn/proj1/conf/svnserve.conf  ~/svn/proj2/conf/svnserve.conf

或cp ~/svn/svnserve.conf  ~/svn/proj2/conf/svnserve.conf

启动

svnserve -d -r ~/svn (注意不是~/svn/proj1)

-d表示以守护模式运行

svn默认监听3690端口,如果已经有svn在运行了,可以使用“--listen-port=”指定其它端口

svnserve-d-r ~/svn/--listen-port3391

这样同一台服务器便可以运行多个svnserver了

检查端口

netstat-ntlp|grep3690

注:如果修改了svn配置,需要重启svn服务

# ps -aux|grep svnserve
# kill -9 ID号 //  -9表示强制终止# svnserve -d -r ~/svn

开启3690端口

/sbin/iptables -I INPUT -p tcp --dport3690-j ACCEPT /etc/init.d/iptables save   //保存 service iptables restart    //重启防火墙

可通过cat /etc/sysconfig/iptables查看是否将3690端口添加成功

windows下测试

需要安装TortoiseSVN,有32位和64位

安装完成后,可以右键打开Repo-browser,(url填svn://ip/proj1)建立一个目录后拖动代码进去,然后在另一个地方就可以check out了
svn目录无绿勾,绿色标记
没有这种
只能不断重新安装和重启了。呵呵。

SVN Check out时需要一直输入密码的问题

home/<user>/.subversion/目录下的config文件找到一下配置:

# store-passwords = no
将“store-passwords = no” 注释掉或将其值设置成yes

在~/.subversion/servers的global域下设置store-plaintext-passwords = yes

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

  1. Linux下搭建SVN服务器及自动更新项目文件到web目录(www)的方法

    首先搭建SVN服务器 1,安装SVN服务端 直接用apt-get或yum安装subversion即可(当然也可以自己去官方下载安装) sudo apt-get install subversion   ...

  2. linux下搭建SVN服务器完全手册

    原文:http://www.cnblogs.com/wrmfw/archive/2011/09/08/2170465.html 系统环境        RHEL5.4最小化安装(关iptables,关 ...

  3. linux下搭建SVN服务器完全手册【转】

    转自:http://blog.csdn.net/bullbat/article/details/9115559 系统环境        RHEL5.4最小化安装(关iptables,关selinux) ...

  4. linux下搭建SVN服务器完全手册【摘抄】

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

  5. linux下搭建SVN服务器完全手册-很强大!!!!!

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

  6. SVN:linux下搭建svn服务器

    转载:https://www.cnblogs.com/puloieswind/p/5856326.html 1. 安装SVN服务器: 检查是否已安装 # rpm -qa subversion 安装SV ...

  7. Linux下搭建svn服务器(转)

    原文地址:http://blog.163.com/longsu2010@yeah/blog/static/173612348201202114212933/ 安装步骤如下: 1.yum install ...

  8. linux下搭建svn服务器

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

  9. Linux下搭建SVN服务器遇到的问题及解决方法,

    1.checkout时,提示:URL svn://192.168.1.99/svntest doesn't exist... 奇怪,怎么会提示库不存在呢?肯定是哪里配置问题.后来尝试了半天,也在网上搜 ...

随机推荐

  1. Matlab的曲线拟合工具箱CFtool使用简介

    http://phylab.fudan.edu.cn/doku.php?id=howtos:matlab:mt1-5 一. 单一变量的曲线逼近Matlab有一个功能强大的曲线拟合工具箱 cftool ...

  2. 悦动达人 (多维dp)

    悦动达人 Description 一个游戏,在屏幕上有5个格子形成一行,每一秒都会有一个格子闪烁,格子闪烁时你需要保证至少有一只手指在格子上面, 现在我们已经知道第i秒时,第xi个格子会闪烁,我们假设 ...

  3. 浅谈如何使用Log4j记录日志

    一.什么是log4j Log4J是Apache的一个开放源代码的项目.通过使用Log4J,程序员可以控制日志信息输送的目的地,包括控制台,文件,GUI组件和NT事件记录器,也可以控制每一条日志的输出格 ...

  4. Centos7上使用官方YUM源安装Mysql

    1. 下载mysql的repo源 $ wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm 2. 安装mysql-co ...

  5. 关于mac安装rails报错clang: error: unknown argument

    文章都是从我的个人博客上转载过来的,大家可以点击我的个人博客. www.iwangzheng.com mac上安装rails的时候报错, 安装rails的在终端执行了一句命令: $sudo gem i ...

  6. DCMTK354之VC++ 2008 MFC应用程序配置完整过程

    花了一个礼拜,终于在VC++2008 MFC 应用程序中完成了首个基于DCMTK354的首个程序ECHOSCUWIN32,现将过程记录下来,便于日后查阅,同时也提供给那些有幸看到此博文而对他们又有帮助 ...

  7. Linux upstart启动方式详解

     Ubuntu从6.10开始逐步用Upstart()代替原来的SysVinit进行服务进程的管理.RHEL(CentOS)也都从版本6开始转用Upstart代替以往的init.d/rcX.d的线性启动 ...

  8. A desmos graph supersampling test

  9. Timer1控件的属性

  10. 反弹SHELL

    [姿势] http://www.91ri.org/6620.html http://www.waitalone.cn/linux-shell-rebound-under-way.html [图释] h ...