CentOS Linux搭建独立SVN Server全套流程(修改svn仓库地址、服务启动等)

一事能狂便少年 发布于 2016/12/27 11:16

字数 1113
阅读 1.3K
 收藏 0
zhou说:

安装完svn后,创建一个svn仓库,svnadmin create repository。
此时访问地址为svn://ip 即可。如果更换仓库需要重启svn服务svnserve -d -r /你的仓库地址。
svn代码库地址就更新啦。svn迁移:点击这里. 注意:初始导入如果遇到无法提交报错(Authorization failed),
做如下修改:svnserve.conf中# password-db = passwd 改为 password-db = passwd

正式开始……………………………………………………………………………………

环境为centos6.3

1.首先 看看机器上安装了svn了没有

rpm -qa |grep svn

2.如果没有安装 执行

yum -y install subversion

3.安装好了之后 新建一个svn目录

mkdir /home/svn

4.新建一个版本仓库

svnadmin create /home/svn/project

红色部分是版本仓库名 在配置文件中会使用的

5.将你需要放在svn上的工程 放进project目录中

6.初始化一下你的版本仓库

svn import 需要放到svn上的文件夹/ file:///home/svn/project -m “版本说明” --username xx --password xx

这里需要注意的是  如果后边不加用户名和密码 可能导致 客户端在使用的时候 update时 不需要输入用户名和密码就可以update

7.添加用户

要添加SVN用户非常简单,只需在/home/svn/project/conf/passwd文件添加一个形如“username=password”的条目就可以了。为了测试,我添加了如下内容:

[users]

# harry = harryssecret

# sally = sallyssecret

pm = pm_pw

8.修改用户访问策略

/home/svn/project/conf/authz记录用户的访问策略,以下是参考:

[groups]

project_p = pm

#[project:/] 如果你的仓库下边就一个版本的话 就不需要使用xxx 直接一个斜杠就完事

#[project:/xxx] 如果你的仓库下边有多个版本的话xxx就是那个文件夹的名字

#上边这2个根据自己情况选一个

@project_p = rw

* =

说明:以上信息表示,只有project_p用户组有根目录的读写权。r表示对该目录有读权限,w表示对该目录有写权限,rw表示对该目录有读写权限。最后一行的* =表示,除了上面设置了权限的用户组之外,其他任何人都被禁止访问本目录。这个很重要,一定要加上!

9.修改svnserve.conf文件,让用户和策略配置升效.

svnserve.conf内容如下:

[general]

anon-access = none

auth-access = write

password-db = /home/svn/project/conf/passwd

authz-db = /home/svn/project/conf/authz

10.启动服务器

# svnserve -d -r /home/svn

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

# ps -aux|grep svnserve

# kill -9 ID号

# svnserve -d -r /home/svn

11.测试服务器

# svn co svn://192.168.x.x/project

12.到此为止 独立svn服务器就建立好了

需要注意的是  如果客户端想要使用的话

url地址一定是这个样子的   svn://192.168.x.x/project看好了  不是htttps的头

如果想要使用http的头的话  需要配置SVN服务器的HTTP支持

服务器重启后,需要手动启动svn服务器:

执行:svnserve -d -r /home/svn

或修改:/etc/rc.d/rc.local

在末尾加入:svnserve -d -r /home/svn

即可启动服务器时,自动启动svn

同一个服务端口,多版本库管理(推荐)

首先你得给所有版本库建立一个根目录,比如/svn

然后再svnadmin create /svn/test1 ; svnadmin create /svn/test2 ......这样建立多个版本库。

然后每个版本库下面的/conf/的配置方法几乎一样,除了:

authz里的目录,即你在文中提到的问题需要加上 [test1:/] , [test2:/]来设置不同的版本库根目录的访问权限。

开启多个版本库的svn server: svnserve -d -r /svn --注意,输入根目录即可

然后这些版本库的访问方式就是:

svn://your-id-address/test1, svn://your-ip-address/test2 了。(当然我假设你使用了默认的3690端口)

作者:朱清

链接:https://www.zhihu.com/question/36161509/answer/66276540

来源:知乎

著作权归作者所有,转载请联系作者获得授权。

启动SVN服务:

svnserve -d -r /home/svn

/home/svn 为版本库的根目录;

关闭SVN服务:

使用以下命令查找进程

ps aux | grep svn

# ps aux | grep svn root 64434 0.0 0.0 181584 1120 ? Ss 02:01 0:00 svnserve -d -r /home/svn root 64481 0.0 0.0 103256 848 pts/1 S+ 02:03 0:00 grep svn

使用Kill命令杀死进程

kill -s 9 64434

64434为进程ID

CentOS Linux搭建独立SVN Server全套流程(修改svn仓库地址、服务启动等)的更多相关文章

  1. CentOS Linux搭建独立SVN Server全套流程(转)

    环境为centos6.3 1.首先 看看机器上安装了svn了没有 rpm -qa |grep svn 2.如果没有安装 执行 yum -y install subversion 3.安装好了之后 新建 ...

  2. (总结)CentOS Linux搭建SVN Server配置详解

         PS:虽然在公司linux服务器上搭建过几次svn,但是时间长了,有些配置操作会忘掉,上网搜索的结果都不大满意,有幸在前几天看到一篇算是最满意的svn搭建文章,转载一下以备以后使用,原文地址 ...

  3. CentOS Linux搭建SVN服务器

    Linux系统:CentOS 安装步骤如下: 1.yum install subversion 2.输入rpm -ql subversion查看安装位置,如下图: 可以看到 svn在bin目录下生成了 ...

  4. CentOS Linux 搭建 SVN(CollabNet Subversion)服务器

    安装CollabNet Subversion之前必须先安装JDK1.6和python2.4 ~ 2.6 groupadd svn useradd -g svn svnuser  passwd svnu ...

  5. 在CentOS Linux系统上,添加新的端口,启用ssh服务

    SSH作为Linux远程连接重要的方式,如何配置安装linux系统的SSH服务,如何开启SSH? SSH是什么? SSH 为 Secure Shell 由 IETF 的网络工作小组(Network W ...

  6. 【Linux】宝塔上 GitLab数据迁移修改配置后nginx无法启动

    背景: 服务器A 向 服务器B 迁移数据,修改配置重启.发现gitlab的 nginx 无法启动. 查找原因 gitlab-ctl tail 错误信息: 网上查了查,似乎是宝塔的问题, 原因应该是为了 ...

  7. linux上svn连接visual svn server时ssl鉴权失败,问题解决(转)

    场景:1.在windows 7上安装了visual svn server作为自己的svn服务器. 2.在虚拟机centos 6.3上使用svn客户端check代码,报错: [plain] view p ...

  8. CentOS下搭建SVN

    1.安装svn yum -y install subversion 2.创建hydata目录 mkdir -p /var/svn/hydata 3.创建 m 目录 mkdir -p /var/svn/ ...

  9. Visual SVN Server+TortoiseSVN进行源代码管理

    安装VisualSVN Server 安装完之后,可配置SVN Server的IP地址,右键下图红色部分,选择属性,然后可配置ServeName和IP Address 之后可以创建用户.用户组和项目库 ...

随机推荐

  1. 经典变长指令SIB

    前言 ModR/M字段是用来进行内存寻址的,可当地址形如DS:[EAX + ECX*2 + 12345678]时,仅仅靠ModR/M字段,是描述不出来的. 这时就在ModR/M后面增加一个SIB字节, ...

  2. elementui 表格格式化

    <el-table-column prop="userType" label="角色" width="180" :formatter= ...

  3. ABP 适用性改造 - 添加 API 版本化支持

    Overview 在前面的文章里有针对 abp 的项目模板进行简化,构建了一个精简的项目模板,在使用过程中,因为我们暴露的 api 需要包含版本信息,我们采取的方式是将 api 的版本号包含在资源的 ...

  4. 6.1vector用法

    目录 一.用法介绍 二.基本用法 三.PAT A1039 一.用法介绍 vector<typename>name; 按照这样的格式进行定义与书写. 注意定义成双数组的情况要加上空格. ve ...

  5. 数据库MySQL二

    注意拼接的时候如果为null则都为null 用if null 1.条件查询 2.按逻辑表达式筛选 3.模糊查询 还有not like 用转义字符\ #2.in 数值型的常量值都不用单引号,非数值型的都 ...

  6. 【spring cloud hoxton】Ribbon 真的能被 spring-cloud-loadbalancer 替代吗

    背景 早上刷圈看到 Spring Cloud Hoxton.M2 Released 的消息,随手发布到了我的知识星球,过了会有个朋友过来如下问题. 抽取半天时间学习spring-cloud-loadb ...

  7. Vue3+Vite引入Echarts5.0图表库

    1 概述 环境Vue3+Vite,需要引入ECharts库. 2 尝试 目前ECharts已更新到5.0版本,在Vue中引入并不难,npm/cnpm安装后在需要的组件中引入: import echar ...

  8. 【运维】Shell -- 快速上手Shell脚本

    1.Shell概述 shell脚本是利用shell的功能所写的一个[程序(program)].这个程序是使用纯文本文件,将一些shell的语法与命令(含外部命令)写在里面,搭配正则表达式.管道命令与数 ...

  9. Windows驱动派遣函数的学习

    //派遣处理例程的介绍: //IPR简介: //IRP全称(I/O Request Package),即输入输出请求包.他是windows驱动的重要概念,用户模式下所有对驱动程序的I/O请求,全部由操 ...

  10. 如何利用C++的time头文件获取系统时间

    C++提供了time.h头文件进行时间编辑操作,可以把时间格式化进tm结构体,方便使用.MFC框架中的ctime类就是基于time.h封装的. 代码样例: #include <iostream& ...