svn部署-linux
Svn作用
Subversion是一个自由/开源的版本控制系统,一组文件存放在中心版本库,记录每一次文件和目录的修改,Subversion允许把数据恢复到早期版本,或是检查数据修改的历史,Subversion可以通过网络访问它的版本库,从而使用户在不同的电脑上进行操作。
举例:svn在192.168.1.160上面
A跟B同时修改160上面的aa.txt文件,两者传上去之后160会整合A跟B的修改。
系统环境:Centos 6.5
第一步:通过yum命令安装svnserve,命令如下:
>yum -y install subversion
此命令会全自动安装svn服务器相关服务和依赖,安装完成会自动停止命令运行
若需查看svn安装位置,可以用以下命令:
>rpm -ql subversion
第二步:创建版本库目录(此仅为目录,为后面创建版本库提供存放位置)
选择在var路径下创建版本库,当前处于根目录下,一次性创建如下:
>mkdir /var/svn/svnrepos
第三步:创建svn版本库
在第二步建立的路径基础上,创建版本库,命令如下:
>svnadmin create /var/svn/xxxx (xxxx为你预期的版本库名称,可自定义)
创建成功后,进入xxx目录下
>cd /var/svn/xxxx
进入目录,可以看见如下文件信息:

第四步:配置修改
进入已经创建好的版本库目录下,也就是前文说创建的xxxx
进入conf
>cd /var/svn/xxxx/conf
conf目录下,一共存放三份重要的配置文件,如下:

authz:负责账号权限的管理,控制账号是否读写权限
passwd:负责账号和密码的用户名单管理
svnserve.conf:svn服务器配置文件
细节修改如下:(希望大家严格按照以下信息,不用参考网络上其他资料)
1.修改authz文件信息,如下:

在末尾添加如下代码:
[/]
zhangsan=rw
lisi=rw
wangwu=r
意思是版本库的根目录zhangsan,lisi对其有读写权限,wangwu只有读权限。
或许
在[groups]下增加以下内容
admin=zhangsan,lisi
user=lisi
规定了两个组,admin组和user组
[/]
本案例根目录为svnrepos
@admin=rw
admin组的权限为读写, 指定组前面必须加上@
@user=r
user组的权限为只读,指定组前面必须加上@
2.修改passwd文件信息
>vi passwd
账号密码文件无需做修改,也是直接将账号和密码信息追加到文件中即可,注意格式为:
账号 = 密码
例如:admin = 123456
修改svnserve.conf(重要)
3.vi svnserve.conf
原始文件内容,都被注释掉的,我们只需要去掉4条指定内容前注释即可,如下:

打开下面的几个注释:
anon-access = read #匿名用户可读,不想匿名用户可读,设置为none
auth-access = write #授权用户可写
password-db = passwd #使用哪个文件作为账号文件
authz-db = authz #使用哪个文件作为权限文件
realm =hengqian # 认证空间名,版本库所在目录
第五步:防火墙开启
多数情况下服务器安装完成,配置完成后,无法连接svn服务器,均是防火墙问题,大家按照如下3条命令逐一执行即可
>/sbin/iptables -I INPUT -p tcp --dport 3690 -j
ACCEPT
>/etc/init.d/iptables save
>service iptables restart
执行结果如下图:

六:启动httpd/svn服务器
Service httpd restart
在跟目录下,执行如下命令:
>svnserve -d -r /var/svn/svnrepos
启动成功后,可用ps -aux查看服务启动是否成功
七:客户端访问svn服务器
安装svn客户端
目前最流行的svn客户端非TortoiseSVN莫属
下载安装
客户端连接地址:svn://公网或内网的IP地址/xxxx,有时候需要添加端口号
用户名/密码: test/123456789 ##要和之前设置的用户名和密码匹配


注意:
默认端口为3690,如果该端口被占用,或者需要修改端口,使用下面语句
svnserve -d -r /opt/svn/repositories --listen-port 3691
新建一个xxx.txt文本





svn部署-linux的更多相关文章
- SVN(linux版)安装与使用
SVN(linux版)安装与使用 一 简述: SVN有2种运行方式,一种是 linux自带的轻量级服务器svnserve,一种是基于Apache的. 基于svnserve的,默认端口为3690,通过 ...
- 企业部署Linux应用将拥有更低的整体拥有成本
企业部署Linux应用将拥有更低的整体拥有成本 使用Linux能为企业的IT解决方案降低TCO(整体拥有成本Total Cost of The Ownership)吗?在面临这个问题时,很多企 ...
- svn部署项目
svn部署项目 在svn服务器上文件夹拷入项目文件~然后直接检出文件夹~即可
- Cobbler全自动批量安装部署Linux系统
说明: Cobbler服务器系统:CentOS 5.10 64位 IP地址:192.168.21.128 需要安装部署的Linux系统: eth0(第一块网卡,用于外网)IP地址段:192.168.2 ...
- ASP.NET Core托管和部署Linux实操演练手册
一.课程介绍 ASP.NET Core 是一种全新的跨平台开源 .NET 框架,能够在 IIS.Nginx.Apache.Docker 上进行托管或在自己的进程中进行自托管. 作为一个.NET Web ...
- pxe+kickstart 自动化部署linux操作系统
kickstart 是什么? 批量部署Linux服务器操作系统 运行模式: C/S client/server 服务器上要部署: DHCP tftp(非交互式文件共享) 安装系统的三个步骤: 1.加载 ...
- 架构师成长之路2.3-PXE+Kickstart无人值守大量部署Linux
点击返回架构师成长之路 架构师成长之路2.3-PXE+Kickstart无人值守大量部署Linux 所谓的无人值守,就是自动应答,当安装过程中需要人机交互提供某些选项的答案时(如如何分区),自动应答文 ...
- 部署Linux项目
部署Linux项目 1● 下载软件 ftp 安装 2● 创建连接 3● java项目 gunzip –c *.gz tar –xzf *.gz rm –rf rm -r ...
- 使用Cobbler批量部署Linux和Windows:Cobbler服务端部署(一)
本文记录了我使用Cobbler批量安装部署Linux和Windows系统的过程,文章主要分为三部分:Cobbler服务端的安装配置.Linux发行版CentOS和Ubuntu的自动安装部署.Windo ...
随机推荐
- SQL注入绕过技巧
1.绕过空格(注释符/* */,%a0): 两个空格代替一个空格,用Tab代替空格,%a0=空格: % % %0a %0b %0c %0d %a0 %00 /**/ /*!*/ 最基本的绕过方法,用注 ...
- ubuntu18.04使用vscode报pylint is not install错误
1.安装pip:sudo apt-get install pip,如果使用python3则需要安装pip3:sudo apt-get install python3-pip 2.使用pip安装pyli ...
- windows下安装hexo和生成博客
首先在电脑上安装node和git,这个只要在相关官网的下载然后一步安装即可. 然后在你的电脑上新建一个文件夹,用来存放你的博客文件,比如创建hexo 进入该文件,右键打开git bash 安装hexo ...
- scrapy RuntimeError: maximum recursion depth exceeded while calling a Python object 超出python最大递归数异常
2019-10-21 19:01:00 [scrapy.core.engine] INFO: Spider opened2019-10-21 19:01:00 [scrapy.extensions.l ...
- Python学习日记(十三) 递归函数和二分查找算法
什么是递归函数? 简单来说就是在一个函数中重复的调用自己本身的函数 递归函数在调用的时候会不断的开内存的空间直到程序结束或递归到一个次数时会报错 计算可递归次数: i = 0 def func(): ...
- 3D中OBJ文件格式详解
常见到的*.obj文件有两种:第一种是基于COFF(Common Object File Format)格式的OBJ文件(也称目标文件),这种格式用于编译应用程序:第二种是Alias|Wavefron ...
- 时间模块time和datetime的使用
日期和时间 一 time模块 import time 时间的表示形式: 时间戳 时间戳是指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现 ...
- 在openwrt上使用autossh(已放弃)
用了一天后发现,这东西真不靠谱,还不如自已写的SHELL检测重连来的精准和方便,放弃中 参考文章: https://my.oschina.net/umu618/blog/849345 https:// ...
- MySQL数据库机房裁撤问题总结
背景:公司某一机房需要裁撤,涉及到大量DB服务器,需要在裁撤截止日期以前完成业务的平滑迁移和设备退还工作. 历时2个多月,经历了设备梳理.裁撤资源评估.裁撤资源申请.裁撤DB部署.裁撤DB业务关系梳理 ...
- 剑指offer:从尾到头打印链表
题目 输入一个链表,按链表值从尾到头的顺序返回一个ArrayList. 解题思路 在不改变链表结构的前提下,因为单向链表本身的结构是从头到尾的,现在用从尾到头遍历打印,可以联想到“先进后出”, 因此我 ...