服务器端配置

svn安装部署 查看系统环境

cat /etc/redhat-release uname -a

安装svn

yum install -y subversion

配置并启动svn 建立svn版本库根目录(svndata)及密码权限目录(svnpasswd)

mkdir -p /application/svndata mkdir -p /application/svnpasswd

启动svn服务指定服务根目录

svnserve -d -r /application/svndata

查看svnserve命令帮助

svnserve --help

-d 进程模式

-r 指定服务的根目录

svn端口3690

netstat -anplut | grep 3690

lsof -i :3690

lsof(list open file)

建立版本库(项目以数据库方式存储,不能用mkdir建立,用专用命令) 创建一个新的svn项目sadoc,项目可以创建多个(默认FSFS存储)

svnadmin create /application/svndata/sadoc

配置允许用户zhangsan读写访问

cd /application/svndata/sadoc/conf

cp svnserve.conf svnserve.conf.bak

修改前查看

egrep "\-access|\-db =" svnserve.conf

#anon-access=read

#auth-access=write

#password-db=passwd

#authz-db=authz

修改(每个参数开头不能有空格)

vim svnserve.conf

12 anon-access = none 不允许匿名访问

13 auth-access = write 允许可写

20 password-db = /application/svnpasswd/passwd  密码数据库

27 authz-db = /application/svnpasswd/authz 权限数据库

cp authz passwd /application/svnpasswd 复制相应数据库文件到对应目录下

cd /application/svnpasswd

ls -l

由于密码是明文保存,不安全,所以修改权限

chmod 700 *

passwd的配置,在此文件中创建4个用户

例如:tigerzhang、zhangsan、lisi、test

vim passwd [users]

语法

用户 =  密码

tigerzhang = redhat

zhangsan = rehdat

lisi = redhat

test = redhat

authz的配置

vim authz [groups]  定义组信息,注意,帐号在passwd里 grp1 = tigerzhang,zhangsan grp2 = lisi

[sadoc:/] 定义项目及项目下所有内容

@grp1 = rw

@grp2 = r

也可以直接对用户授权(如test = r)

注意: 权限配置文件中出现的用户名必须在用户配置中定义,对权限配置文件的修改立即生效,不必重启svn,一个用户组可以包含1~多个用户,用户之间以逗号分隔。

版本库目录格式:

[<版本库>:/项目/目录]

@<组名> = <权限>

<用户名> = <权限>

其中,方括号内可以有多种写法:

[/] 表示根目录及以下,根目录是svnserver启动时指定的,我们指定的/application/svndata

[/] 是对全部版本库设置权限

[repos:/] 对版本库repos设置权限

[repos:/sadoc] 对版本库repos中的sadoc项目设置权限

[repos:/sadoc/123] 对版本库repos中的sadoc项目的123目录设置权限 权限主体可以是组、用户或* 用户组前面加@

*表示全部用户 权限可以是w、r、rw和空,空表示没有任何权限

authz每个参数要顶格写,不能有空格

重启svn kill -USR1 $(cat /application/svndata/svn.pid)

svnserve -d -r /application/svndata --pid-file=/application/svndata/svn.pid

或者

pkill svnserve

svnserve -d -r /application/svndata ps -ef | grep svn

客户端安装

客户端TortoiseSVN 从网上下载 TortoiseSVN-1.6.5.16974-win32-svn-1.6.5.msi(windows的客户端)

连接方式,帐号及密码

svn://ip/sadoc

用户名:tigerzhang

密码:redhat

随便建立一个目录,右击-->SVN checkout...

输入连接方式、帐号、密码

出现Completed,说明已成功连接到svn服务器,只不过svn中无内容。

进入创建的目录中,创建一个文件,在创建的目录 右击-->SVN Commit,选择要提交的文件。

观看svn服务器内容

在创建目录 右击->TortoiseSVN->Repo Browser,可以看到svn服务器中的内容。

企业SVN版本控制服务器搭建的更多相关文章

  1. 【svn】服务器搭建和迁移

    导语 svn客户端大部分开发都会用到,但是为什么我们仍然需要svn服务端呢? 理由可能有: 1,我们想存放一些属于自己的文档,而不像被其他人发现(在自己的网络环境中,安全性更高,更易用,不依赖于公司, ...

  2. SVN版本服务器搭建

    windows:        https://blog.csdn.net/lu1024188315/article/details/74082227 SVN 的下载地址如下 http://torto ...

  3. 【iOS】Mac下SVN的服务器搭建

    在协同开发中,版本控制是必备的.完全不敢想象团队都在用U盘.QQ管理代码的景象.但是svn不像git,拥有众多免费的代码库,如果在同 一局域网下,搭建svn服务端来同步代码是很有必要的.本文将详细讲解 ...

  4. SVN本地服务器搭建及在Eclipse中的应用

    0.说明在程序开发的时候会有很多的版本,通过手动备份的方式不紧麻烦而且低效易出错.使用SVN来管理版本会方便很多,虽然有一些学习成本,但是学会使用之后会使得开发更加的高效.本文介绍如何在本地搭建svn ...

  5. SVN+FTP服务器搭建(一)——SVN安装配置篇

    Subversion是一个自由,开源的版本控制系统.在Subversion管理下,文件和目录可以超越时空.Subversion将文件存放在中心版本库里.这个版本库很像一个普通的文件服务器,不同的是,它 ...

  6. SVN版本服务器搭建(服务端+客户端)

    原文地址:http://www.cnblogs.com/warrior1988/p/5359084.html 环境:Win7 32 bit SVN简介:程序员在编写程序的过程中,每个程序员都会生成很多 ...

  7. 应用360云盘与SVN版本管理服务器搭建基于云端的版本控制软件

    步骤一:(安装软件) 1.TortoiseSVN 2.VisualSVN-Server-2.71 3.安装云盘客户端360wangpan_setup 步骤二:(VisualSVN Server设置) ...

  8. SVN版本控制系统搭建(+结合http服务)

    .zise { background: #CCCCFF; color: white; text-align: center } .fense { color: #FFCCCC; text-align: ...

  9. SVN版本控制系统搭建(结合http服务)

    SVN版本控制服务器搭建 Svn(subversion)是一个开源代码管理的控制系统,用来管理和存储开发的源代码,基于C/S模式.可以单独提供服务,也可以结合http服务来实现. 运行方式  运行端口 ...

随机推荐

  1. c语言利用读取命令行(多行读取)

    #include<stdio.h> #include<stdlib.h> #include<string.h> int main() { FILE *fh = po ...

  2. 《AutoCAD Civil 3D .NET二次开发》勘误1

    第十三章atc文件中Displayname应为DisplayName,注意Name的N为大写,否则参数名称无法正常显示. 给您带来的不便深表歉意!

  3. Gym - 101982F Rectangles (扫描线+线段树)

    链接:http://codeforces.com/gym/101982/attachments 思路: 问被覆盖次数为奇数次的矩阵的面积并 扫描线求矩阵面积并我们是上界赋为-1,下界赋为1,因为要求覆 ...

  4. Educational Codeforces Round 62 (Rated for Div. 2)C

    题目链接 :C. Playlist #include<bits/stdc++.h> using namespace std; #define maxn 300005 #define LL ...

  5. Java基础 -- 深入理解泛型

    一般的类和方法,只能使用具体的类型:要么是基本类型,要么是自定义的类.如果要编写可以应用于多种类型的代码,这种刻板的限制对代码的束缚就会很大. 而泛型很好的解决了这个问题,这也是Java SE5的重大 ...

  6. 自定义 ThreadPoolExecutor 处理线程运行时异常

    自定义 ThreadPoolExecutor 处理线程运行时异常 最近看完了ElasticSearch线程池模块的源码,感触颇深,然后也自不量力地借鉴ES的 EsThreadPoolExecutor ...

  7. JavaScript传递参数方法

    1.SetTimer传递参数 setTimeout(function (obj) { obj.myScroll = new IScroll('#wrapper', { click: true }); ...

  8. JGUI源码:实现简单进度条(19)

    程序效果如下 实现进度条动画主要有两种方法:(1)使用缓动,(2)使用Jquery Animate,本文使用第二种方法,先实现代码,后续进行控件封装 <style> .jgui-proce ...

  9. 六十、linux 编程—— I/O 多路复用 select

    60.1 介绍 60.2 例子 echo_tcp_server_select.c #include <netdb.h> #include <netinet/in.h> #inc ...

  10. jpa Auditor 自动赋值与自定义 @CreatedBy @LastModifiedBy @CreatedDate @LastModifiedDate

    在spring jpa audit 中,在字段或者方法上使用注解@CreatedDate.@CreatedBy.@LastModifiedDate.@LastModifiedBy,当进行实体插入或者更 ...