一、安装svn服务器端yum install subversion      从镜像下载安装svn服务器端 如果后面执行“svnadmin create /usr/local/svn/sunny”提示错误:“command not found”,把这句“mount /dev/cdrom /media/cdrom/  ”话挂在这句“yum install subversion”之前

cd /usr/local/              //进入目录,准备创建svn目录

mkdir svn                   //创建一个svn目录

chmod -R 777 svn            //修改目录权限为777

svnadmin create /usr/local/svn/sunny  //创建一个svn版本仓库sunny(sunny可以随便起名字)   到这一步了!!!!

 cd svn/sunny/conf               //进入sunny版本仓库下的配置文件目录下面要修改这个目录下的三个配置文件

(1)vi svnserve.conf    //配置版本库信息和用户文件和用户密码文件的路径、版本库路径把

# anon-access = read

# auth-access = write

# password-db = passwd//这四行,前面的#号和空格去掉(注意去掉#要顶格写,不要留有多余空格),变成

anon-access = none      //改成noneauth-access = write

password-db = passwd

realm = sunny           //改成自己的版本库保存

(2)vi authz     //文件,创建svn组和组用户的权限

[group]

sunny = gep,wce //创建一个sunny的组,并指定两个用户gep和wce

[/]            //制定根目录下的权限

@sunny = rw     //sunny组用户权限为读写

* = r           //其他用户只有读权限

保存退出

(3) vi passwd   //创建或修改用户密码

[users]

gep = 123456    //用户名为gep的用户的密码为123456

wce = 123456    //用户名为wce 的用户的密码为123456

保存退出

启动svn:svnserve -d -r /usr/local/svn/     //这里采用多版本库的方式启动如果是单版本库 可以svnserve -d -r /usr/local/svn/sunny

添加一行然后要设置自启动

vi /etc/rc.local    打开自启动文件添加

/usr/bin/svnserve -d -r /usr/local/svn/

到此为止可以从服务端检出文件了

.svn命令:netstat -tnl |grep :3690   查看svn是否启动

ps aux |grep 'svn'  查找所有svn启动的进程kill -9 2505    杀死2505这个查找到的svn进程

svn checkout svn://172.19.5.2/sunny /data0/htdocs/blog  //检出一份版本库文件到指定目录

svn up                        //更新文件

自动更新

在vi /usr/local/svn/sunny/hooks/post-commit中加入

#!/bin/sh#设置一些变量

SVN=/usr/bin/svn

WEB=/home/testsvn #要更新的目录

export LANG=en_US.UTF-8$SVN update $WEB --username xxx --password xxx

 

其中SVN=右边改成 svn 命令位置 一般默认为/usr/bin/svn

  WEB=右边改成你实际的web目录

赋予可执行权限chmod 777 /usr/local/svn/sunny/hooks/post-commit

安装完毕

 

 

=========================================================================

其他操作

#svn commit -m "注释" xxx.php  //提交文件

svn ci -m'aaa' test.php       //提交文件

#svn add file               //新建文件并添加到svn

svn add *.php               //(添加当前目录下所有的php文件)

svn delete test.php         //删除test.php

svn log test.php            //查看test文件的log信息

svn cleanup                 //清理当前目录

svn switch --relocate svn://192.168.1.253  svn://172.19.10.250      //重新定位SVN版本库地址

// SVN版本库起动方式,现在SVN下面有 sunny、test 两个版本库

1:单版本库起动    svnserve -d -r /usr/local/svn/sunny

2:多版本库起动    svnserve -d -r /usr/local/svn

区别在于起动svn时候的命令中的启动参数-r指定的目录。

限制不同的用户对不同的版本库操作权限,修改版本库中的conf目录下的 authz文件

以配置 sunny 版本库为例

vi authz

[groups]

teacher = sunny,sunny1

[sunny:/]             //指定版本库跟目录下的权限

@teacher = rw     //teacher组用户权限为读写

* = r           //其他用户只有读权限保存退出

vi passwd 设置组中用户的账号和密码

[users]

sunny  = 123456

sunny1 = 123456

Linux 搭建svn版本库的更多相关文章

  1. linux 创建svn版本库,并在svn上配置checkstyle做代码风格检查

    一.创建SVN版本库 1.安装svn服务器 yum install subversion 2.查看版本 svnserve --version 3.建立SVN版本库目录(即你的SVN服务器里面的文件存放 ...

  2. linux上svn版本库创建小记

    [新建svn仓库] 先创建一个文件夹mkdir /opt/svn/wechat;   然后创建svn版本库    svnadmin create /opt/svn/wechat;   [创建用户组权限 ...

  3. Linux新建SVN版本库

    1.进入svn 版本库(如/www/svn) 2.创建svn 版本库svnadmin create  edition 3.进入新建的版本库库目录cd edition 4.进入版本库配置目录cd con ...

  4. linux服务器上创建svn版本库

    1. 创建存放各个svn版本库的目录svnrepos(自己定义路径) -bash: cd /usr/local/apache/htdocs/ -bash: mkdir svnrepos 2. 假设我要 ...

  5. Linux 搭建SVN 服务器(转)

    一. SVN 简介 Subversion(SVN) 是一个开源的版本控制系統, 也就是说 Subversion 管理着随时间改变的数据. 这些数据放置在一个中央资料档案库 (repository) 中 ...

  6. 原 Linux搭建SVN 服务器2

    原 Linux搭建SVN 服务器 发表于1年前(2014-08-05 17:55)   阅读(12257) | 评论(3) 31人收藏此文章, 我要收藏 赞3 摘要 Linux搭建SVN 服务器 目录 ...

  7. 原 Linux搭建SVN 服务器

    原 Linux搭建SVN 服务器 发表于1年前(2014-08-05 17:55)   阅读(12257) | 评论(3) 31人收藏此文章, 我要收藏 赞3 摘要 Linux搭建SVN 服务器 目录 ...

  8. Linux搭建SVN 服务器

    Linux搭建SVN 服务器 1          安装SVN 2          使用客户端连接 2.1       使用windows的客户端 2.2       使用Linux下的命令行 3  ...

  9. Linux搭建SVN 服务器(转)

    转自:http://my.oschina.net/lionel45/blog/298305 Linux搭建SVN 服务器 作者: 沈小然    日期:2014年 8月 5日 1          安装 ...

随机推荐

  1. Python简单爬虫记录

    为了避免自己忘了Python的爬虫相关知识和流程,下面简单的记录一下爬虫的基本要求和编程问题!! 简单了解了一下,爬虫的方法很多,我简单的使用了已经做好的库requests来获取网页信息和Beauti ...

  2. 走进javascript——解开switch之谜

    很早以前就觉得switch很怪异,或者说一直没太理解它,它怪异就怪异在非要给每个语句加上break;不然后面的语句就算不符合条件还是会执行,比如以下这段代码 var num = 2; switch(n ...

  3. PAT---完美数列

    由于数值比较大,选用long型的 先用快速排序方法对数组进行排序,然后进行查找. 用一个问题是所要查找的数可能不在数组中,因此不能用现成的二叉查找法.试着对二叉查找法进行改进,单没调通. 在查找过程中 ...

  4. Sublime Text3安装、注册、插件安装教程

          在前端开发中,有很多软件供我们使用:大名鼎鼎的WebStorm,老而弥坚的Dreamweaver,后起之秀Hbuilder,还有小清新Sublime Text.......等等.作为新手, ...

  5. Linux Bash Shell入门教程

    Linux 系统根据 "#!" 及该字串后面的信息确定该文件的类型,关于这一问题同学们回去以后可以通过 "man magic"命令 及 /usr/share/m ...

  6. JS完成页面跳转并传参的方法|附加:循环遍历对象

    此方法只能传递较少参数 方法如下: <a href='page/index.html'>跳转</a> 以上是正常写法,如果要传参按一下写法: <!--参数写在?后面,多个 ...

  7. 关于 parseInt 的一道有意思的面试题

    看完标题,入坑过的同学脑海里很快会浮现出这道经典面试题,没碰到过的同学不妨跟着楼主先来复习一遍 parseInt 的用法(主要参考 MDN). parseInt 是 JavaScript 中的一个全局 ...

  8. redis命令大全

    redis windows下使用及redis命令 Redis 是一个开源,高级的键值对的存储.它经常作为服务端的数据结构,它的键的数据类型能够是strings, hashs, lists, sets( ...

  9. 从源码解析TreeMap

    上篇文章我们介绍了HashMap集合,这是一个键值对集合,可以高效的按照键查找数值.但是它有一个缺陷:数据如果是无序的可以是很高效的,但是如果数据需要排列有顺序就不适合了.本篇将要介绍的一个集合是树集 ...

  10. javascript的字符串判断方法

    Javascript中判断符号主要有:==.!=.===.!== ==.!=这两个符号在判断之前会先对变量类型进行转换,如果类型相同会再比较值; ===.!==这是直接判断两个变量的类型,如果类型不一 ...