安装svn

参考http://blog.csdn.net/dl425134845/article/details/41978541

系统版本

uname -a # 查看内核/操作系统/CPU信息

head -n 1 /etc/issue # 查看操作系统版本

yum软件仓库找到SVN安装包安装

中间会列出要关联的包,并提示下载:输入“y”并确认

yum list *svn*

yum install subversion

成功

查找svn位置 查看SVN 命令 和版本和

svn help   或者 svn --help

svn --version

svnadmin --version

find / -name svn

创建目录存放版本库

cd /

mkdir /svndata

创建版本库1 wxshop

svnadmin create /svndata/wxshop

创建版本库2  xiaocx

svnadmin create /svndata/xiaocx

配置信息1

cd /svndata/wxshop/conf

这里面有3个文件,分别为authz、passwd、svnserve.conf;

主要就是修改其中配置,可以统一把所有配置集中一起,也可以各自配置。

以下就是统一配置

配置信息2

mkdir /svndata/svnconf

===

创建一个svn统一管理

配置信息3

cp /svndata/wxshop/conf/authz /svndata/svnconf/

cp /svndata/wxshop/conf/passwd /svndata/svnconf/

rm -rf /svndata/wxshop/conf/authz

rm -rf /svndata/wxshop/conf/passwd

==========

把配置,账号密码,权限等配置集中一起

首先先将authz和passwd这2个文件复制到/usr/local/svnconf目录下;

删除当前目录(/usr/local/svndata/wxshop/conf)下的authz、passwd;

修改当前目录(/usr/local/svndata/wxshop/conf)下的svnserve.conf;

配置信息4,svn仓库修改参数

vim /svndata/wxshop/conf/svnserve.conf

[general]

anon-access = none # 使非授权用户无法访问

auth-access = write # 使授权用户有写权限

password-db = /svndata/svnconf/passwd  # 指明密码文件路径

authz-db = /svndata/svnconf/authz    # 访问控制文件

http://www.cnblogs.com/shaohuixia/p/5532448.html

svnserve.conf

各参数功能在配置文件的注释中有说明, 此处配置如下:

[general]

anon-access = none # 使非授权用户无法访问

auth-access = write # 使授权用户有写权限

password-db = /opt/svndata/repos/conf/passwd  # 指明密码文件路径

authz-db = /opt/svndata/repos/conf/authz    # 访问控制文件

realm = /opt/svndata/repos   # 认证命名空间,subversion会在认证提示里显示,并且

配置svn用户   :passwd文件

vim /svndata/svnconf/passwd

[users]

XXX123 = wjb123

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

[users]

<用户1> = <密码1> admin = admin

<用户2> = <密码2> username2 = password2

可以添加多个,此为用户名密码对。

配置权限 :authz文件

vim /svndata/svnconf/authz

[groups]

admin = xxx123,wjbsw

[/]

@admin = rw

[wxshop:/]

@admin = rw

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

意思是,用户组admin,有用户,wjb123和wjbsw两个用户

[/],根目录。也就是对于/svndata根仓库,也就是所有仓库

@admin = rw   这个组有读写权限

[wxshop:/]  只对于wxshop仓库

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

配置权限 :authz文件

指令简介:此配置文件采用“基于路径的授权”策略,中括号里指定路径,以下列出对各用户的授权。包括只读r,读写rw。没有列出的用户,则不允许访问。还可以对用户分组,具体请参考svn手册,以下是简单例子:

<!--[if !supportLineBreakNewLine]-->       用户组格式:

[groups]

<用户组名> = <用户1>,<用户2>

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

版本库目录格式:
    [<版本库>:/项目/目录]
    @<用户组名> = <权限>
    <用户名> = <权限>
    其中,方框号内部分可以有多种写法:
     /,表示根目录及以下。根目录是svnserve启动时指定的,我们指定/opt/svndata。这样,/就是表示对全部版本库设置权限。
     repos1:/,表示对版本库1设置权限
     repos2:/abc, ,表示对版本库2中的abc项目设置权限
     repos2:/abc/aaa, ,表示对版本库2中的abc项目的aaa目录设置权限
     权限主体可以是用户组、用户或*,用户组在前面加@,*表示全部用户。权限可以是w、r、wr和空,空表示没有任何权限。

重点是修改这4个参数

anon-access = none

auth-access = write

password-db = /usr/local/svn/passwd    //这也是为什么上面讲passwd复制到/usr/local/svn路径下的原因

realm = XXXXX   //这是svn连接时的提示信息

启动SVN

/usr/bin/svnserve -d -r /svndata/

//注意,这里只输入到版本库的父母录即可,这样会加载里面所有的版本库

netstat -nupl (UDP类型的端口)
netstat -ntpl (TCP类型的端口)

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

如果找不到,find / -name svn

(输入命令:svnserve -d -r /usr/local/svndata )                    //注意,这里只输入到版本库的父母录即可,这样会加载里面所有的版本库

更新线上web网站代码到svn

切换路径至/usr/local/svndata/repos1/hooks

复制post-commit.tmpl文件并且命名为post-commit,   命令如下

cp post-commit.tmpl  post-commit

修改post-commit文件的属性,增加可执行权限,            命令如下:

chmod -R +x post-commit

修改post-commit文件,,在末尾添加如下内容,把末尾几行没有注释掉的注释掉,修改内容如下:

WEB= /home/wwwroot/website1/                     //这里指向的是你web发布存放代码的路径

export LANG=en_US.UTF-8

/usr/local/svn/bin/svn update $WEB --username 用户名 --password '密码'

至此版本库1修改完毕,同样修改版本库2,

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

服务器上检出

svn checkout svn://120.77.40.225:/wxshop /home/wujunbin/www

也有一种是把端口号也写上的svn checkout svn://120.77.40.225:3690/wxshop /home/wujunbin/www

http://www.cnblogs.com/fengbohello/p/4548580.html

=========

./svn co svn://本机ip地址/repos1   /home/wwwroot/website1

./svn co svn://本机ip地址/repos2   /home/wwwroot/website2

关闭SVN,方法如下:

查看svn进程是否已经启动,ps -ef|grep svn    ps -ef|grep svnserve

netstat -ntlp

然后输入 kill -9 进程号 杀死该进程

重新指定一个端口号(默认端口3690)

svnserve -d --listen-port 3691 -r /opt/svndata/repos

卸载svn

yum remove subversion

svn错误svn: Can't connect to host '120.77.40.225': Connection refused

启动SVN

切换到/usr/local/svn/bin目录下

输入命令:svnserve -d -r /usr/local/svndata                      //注意,这里只输入到版本库的父母录即可,这样会加载里面所有的版本库

svn安装和配置的更多相关文章

  1. linux svn安装和配置

    linux svn安装和配置,不结合apache http://blog.51yip.com/server/901.html 张映 发表于 2010-07-07 分类目录: 服务器相关 今天有个同事在 ...

  2. Svn 安装、配置、使用指南

    Svn 安装.配置.使用指南 Svn 是 Subversion 的简称,是一个开放源代码的版本控制系统,它采用了分支管理系统. 1. 安装配置 1.1. 安装 svn 1.2. 创建 svn 仓库 1 ...

  3. Centos7 下的SVN安装与配置

    Centos7 下的SVN安装与配置 1.关闭防火墙 临时关闭防火墙 systemctl stop firewalld 永久防火墙开机自关闭 systemctl disable firewalld 临 ...

  4. 【转载】Ubuntu下SVN安装和配置

    一.SVN安装 1.安装包 1.$ sudo apt-get install subversion 2.创建项目目录 $ sudo mkdir /home/xiaozhe/svn $ cd /home ...

  5. SVN安装与配置 SVN整合MyEclipse

    SVN安装: 1.安装服务器 ######### 安装文件:SVN服务器############### # http://www.collab.net/downloads/subversion # C ...

  6. Ubuntu下SVN安装和配置

    一.SVN安装 1.安装包 1.$ sudo apt-get install subversion 2.创建项目目录 $ sudo mkdir /home/xiaozhe/svn $ cd /home ...

  7. LINUX环境下SVN安装与配置(利用钩子同步开发环境与测试环境)

    安装采用YUM一键安装: 1.环境Centos 6.6 2.安装svnyum -y install subversion 3.配置 建立版本库目录mkdir /www/svndata svnserve ...

  8. linux SVN安装及配置教程

    1.环境centos6.4 2.安装svnyum -y install subversion 3.配置 建立版本库目录mkdir /www/svndata svnserve -d -r /www/sv ...

  9. centOS下SVN安装和配置

    1>SVN服务器端文件可见问题 在平时使用SVN时候,一直以为在客户提交文件,那么在服务器对应的版本库下面就会有相同文件.在自己搭建后,发现提交到服务器端文件完全看不见.... 这是由于SVN服 ...

随机推荐

  1. python写一段脚本代码自动完成输入(目录下的所有)文件的数据替换(修改数据和替换数据都是输入的)【转】

    转自:http://blog.csdn.net/lixiaojie1012/article/details/23628129 初次尝试python语言,感觉用着真舒服,简单明了,库函数一调用就OK了 ...

  2. perl_nc.pl

    #!/usr/bin/perl use strict; use IO::Socket; use IO::Select; use Getopt::Std; my %option;getopts('lp: ...

  3. sql server查看创建表的代码,表定义

    1.查看建表语句在“对象资源管理器”中找到要导出的表,选中该表并单击右键,“编写表脚本为(S)”/“CREATE到(C)”/“新查询编辑器窗口”即可查看该表的建表语句.2.导出建表语句在“对象资源管理 ...

  4. 剑指offer中数据结构与算法部分学习

    2.3.4 树 遍历:前中后序,宽度优先. 二叉树的特例:二叉搜索树.堆(最大堆和最小堆,用于找最值).红黑树(c++ STL中的很多数据结果就是基于这实现的): 题7-重建二叉树:递归,设置四个位点 ...

  5. Mac OSX下Appium驱动iPhone真机

    1.安装Xcode.Command Line Tools和Appium. 2.安装brew:/usr/bin/ruby -e "$(curl -fsSL https://raw.github ...

  6. JSP(3) - 9个JSP内置对象 - 小易Java笔记

    1.9个JSP内置对象 内置对象引用名称     对应的类型 request HttpServletRequest response HttpServletResponse config Servle ...

  7. 9:django 表单

    django自带表单系统,这个表单系统不仅可以定义属性名,还可以自己定义验证,更有自己自带的错误提示系统 这节我们仅仅粗略的来看一下django表单系统的入门运用(具体的实在太多东西,主要是我觉得有很 ...

  8. 阿里云Centos等更新源设置成阿里源方法。

    https://help.aliyun.com/knowledge_detail/5974184.html ---------------------------------------------- ...

  9. window.screen.height和window.screen.availHeight和document.body.clientHeight和document.documentElement.clientHeight

    说这几个属性前 我说一下我的设备 我的设备有两个,一个高度为1080的显示器,一个高度为800的电脑 第一种:window.screen.height 这个方法是获取用户电脑屏幕的高度,是不关浏览器或 ...

  10. 你想了解的轮询、长轮询和websocket都在这里了

    日常生活中,有很多需要数据的实时更新,比如群聊信息的实时更新,还有投票系统的实时刷新等 实现的方式有很多种,比如轮询.长轮询.websocket 轮询 轮询是通过设置页面的刷新频率(设置多长时间自动刷 ...