安装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. C基础 redis缓存访问

    引言 先说redis安装, 这里采用的环境是. Linux version --generic (buildd@lgw01-) (gcc version (Ubuntu -14ubuntu2) ) # ...

  2. 使用cmd(黑窗口)敲命令使用远程数据库

    C:\Users\gzz>mysql -h 10.27.104.176 -u root -p mysql

  3. tk界面版股票下载

    from tkinter import * import urllib.request import re,os import threading from tkinter import filedi ...

  4. MapReduce案例二:好友推荐

    1.需求 推荐好友的好友 图1: 2.解决思路 3.代码 3.1MyFoF类代码 说明: 该类定义了所加载的配置,以及执行的map,reduce程序所需要加载运行的类 package com.hado ...

  5. LeetCode解题报告—— Reverse Linked List II & Restore IP Addresses & Unique Binary Search Trees II

    1. Reverse Linked List II Reverse a linked list from position m to n. Do it in-place and in one-pass ...

  6. EF框架的优点是什么?

    在.Net Framework SP1微软包含一个实体框架(Entity Framework),此框架可以理解成微软的一个ORM产品.用于支持开发人员通过对概念性应用程序模型编程(而不是直接对关系存储 ...

  7. sql server 2008 R2无法连接127.0.0.1报错 Server error:40(错误:53)

    在公司用sql server 2008 R2很好的,回家连接127.0.0.1就报错.sql server2008R2主机名和.都可以登录,连接127.0.0.1出错,在与 SQL Server 建立 ...

  8. Search Insert Position——二分法

    Given a sorted array and a target value, return the index if the target is found. If not, return the ...

  9. AC日记——[SDOI2010]大陆争霸 洛谷 P3690

    [SDOI2010]大陆争霸 思路: dijkstra模板: 代码: #include <bits/stdc++.h> using namespace std; #define maxn ...

  10. Maven的私有仓库Nexus

    1.什么是Nexus 在前面进行maven项目的构建中,可以看到在构建的过程中需要安装maven的依赖插件,如图: 在日常的开发构建中,我们也可以自己搭建一个私有的nexus.那么什么是nexus呢? ...