一、安装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. oracle用户创建,连接,删除

    绕过管理员身份进行登录: sqlplus /nolog conn /as sysdba 如何创建一个普通用户: 1.create user jsd1412 identified by jsd1412 ...

  2. gitHub搭建

    1.注册一个gitHub账户 2.新建立一个远程仓库(登陆进去后-->点击图标 --> New repository ) 3.跳转后,填写相关信息(仓库名称及选项) 4.在本地的文件夹里右 ...

  3. selenium框架与chrome浏览器的不兼容问题

    在一次偶然的情况下,在chrome上用selenium框架去抓取某个id为XX的页面元素,使用WebDriver的findElement().click()方法进行点击,原来在firefox浏览器运行 ...

  4. git链接GitHub命令及基本操作

    Git是一款不错的代码管理工具,下面引用百科的一段话:  Git是用于Linux内核开发的版本控制工具.与CVS.Subversion一类的集中式版本控制工具不同,它采用了分布式版本库的作法,不需要服 ...

  5. Ant学习总结5(配合Ant视频8,9)

    重点: Ant的属性介绍:  <property name="build.dir" value="build"/>注意:一般对于常量都会定义成为属性 ...

  6. Ant学习总结2

    <?xml version="1.0" encoding="UTF-8"?> <project default= "compile& ...

  7. jQuery DataTable 删除数据后重新加载

    问题描述: 利用jQuery Datatable和artTemplate组合来做的表格.但是当删除数据时,需要重新加载table里的数据.但是问题是datatable并没有直接的重新渲染,反而给数据累 ...

  8. 基于vue2.0+vuex+localStorage开发的本地记事本

    本文采用vue2.0+vuex+localStorage+sass+webpack,实现一个本地存储的记事本.兼容PC端和移动端.在线预览地址:DEMO github地址:https://github ...

  9. 【转】svn cleanup failed–previous operation has not finished; run cleanup if it was interrupted

    svn提交遇到恶心的问题,可能是因为上次cleanup中断后,进入死循环了. 错误如下 解决方法:清空svn的队列 1.下载sqlite3.exe 2.找到你项目的.svn文件,查看是否存在wc.db ...

  10. HTML 5入门知识——Drag

    HTML 5拖放 拖放的步骤: 1.对象元素的draggable属性设置为true,还需要注意的是a元素和img元素必须指定href. 2.编写与拖放有关的事件处理代码: DataTransfer对象 ...