linux下svn安装与版本控制

  • 一、svn简介
  • 二、svn卸载与安装
    • 2.1 svn卸载
    • 2.2 svn安装
      • 2.2.1 svn在线安装
      • 2.2.2 svn离线安装
  • 三、 创建SVN版本库
    • 3.1 创建库
    • 3.2 库权限配置
      • 3.2.1 权限控制authz配置
      • 3.2.2 用户密码配置:passwd
      • 3.2.3 服务配置:svnserve.conf
  • 四、 SVN启动与停止
    • 4.1 启动SVN服务器
    • 4.2 停止SVN服务
  • 五、本地配置
  • 六、linu下svn配置http与https访问
  • 七、linux下svn命令操作
  • 八、自启动服务

一、svn简介

  SVN是subversion的缩写,是一个开放源代码的版本控制系统,通过采用分支管理系统的高效管理,简而言之就是用于多个人共同开发同一个项目,实现共享资源,实现最终集中式的管理。svn作为曾经流行的版本控制控制软件,它优异的版本控制功能在有意无意间已经深入IT人的工作了。然而虽然有后起之秀的git,但现在使用svn的项目并不在少数。下面来看看如何使用安装和使用svn吧。

二、svn卸载与安装

2.1 svn卸载

   执行命令 yum remove subversion

2.2 svn安装

2.2.1 svn在线安装

1、执行安装命令:yum -y install subversion

2、查看安装的版本,确认安装成功:svnserve --version

3、查看安装位置:rpm -ql subversion

2.2.2 svn离线安装

1、 下载
   官网下载: https://subversion.apache.org/.
注:具体版本根据实际需要
2、参考步骤参考:https://blog.csdn.net/weixin_36484465/article/details/116869866.

(1) 将下载的安装包拷到指定的目录,我这里目录是“/usr/svn",可根据实际情况确定目录

(2) 解压缩安装包:tar zxvf 安装包名称

查看解压情况:

(3)安装步骤参考上述链接内容

三、 创建SVN版本库

3.1 创建库

1、创建指定目录(根据实际需要): mkdir 目录名称
我的目录是:mkdir /opt/svn

2、建立SVN库:svnadmin create /opt/svn/库名称

 执行此命令后svn自动在目录下添加必须的配置文件.
 注意:版本库不同于一般的文件夹, 直接在操作系统上新建文件无法被SVN识别, 必须使用import等命令将文件导入版本库。此为svn内部指令,create用于新建版本库。请使用svn help查看详细说明。

3、进入库,查看库中文件: cd 库名

  出现上图中的文件,则说明库创建成功。

subversion - 目录说明:
 db目录:就是所有版本控制的数据存放文件。
 hooks目录:放置hook脚本文件的目录。
 locks目录:用来放置subversion见艰苦锁定数据的目录,用来追踪存取文件库的客户端。
 format文件:是一个文本文件,里面只放了一个整数,表示当前文件库配置的版本号。
 conf目录:是这个仓库的配置文件(仓库的用户访问账号、权限等)。
conf目录:
  进入配置文件目录:cd conf/
  authz:文件是权限控制文件
  passwd:是帐号密码文件
  svnserve.conf :SVN服务配置文件
    

3.2 库权限配置

  注:linux文档编辑操作方法 - linux文档编辑:gedit和vi命令详解.

3.2.1 权限控制authz配置

命令:vi authz

1、设置权限:

说明:
   r 为可读
   w 为可写
   rw 为可读可写
   *= 代表其他用户无任何权限
   (一定要记得 在[/]下面设置每一个用户的权限, 在[groups]下设置用户组的权限, 有的配置文件下没有[/], 设置单个用户权限的时候一定要添加上,如果不添加上,就会一直认证失败)

2、设置用户分组(相当于角色,这里可以不设置)

auth文件示例:

[groups]
math = root,user1,user2
[/]
@math = rw
* = r

3.2.2 用户密码配置:passwd

命令:vi passwd

根据需要配置本库使用的:用户名 = 用户密码 (注意:头部不允许有空格)
passwd文件示例:

[users]
root = 123456
user1= 123456
user2= 123456

3.2.3 服务配置:svnserve.conf

1、删除原有的#,并且前面不要有空格:

anon-access = none # 使非授权用户无法访问
auth-access = write # 使授权用户有写权限
password-db = passwd  #密码数据库的路径,这样默认在svnserve.conf同级目录下
authz-db = authz #访问控制文件的路径,这样默认在svnserve.conf同级目录下

说明:anon-access = none 是为了在eclipse中可以通过svn查看资源历史记录

2、去掉下面列出的前面的#,并指定路径:

realm = /opt/svn/版本库名称  # 版本库路径 :认证命名空间,subversion会在认证提示里显示,并且作为凭证缓存的关键字。

3、其它采用默认配置. 各语句都必须顶格写, 左侧不能留空格, 否则会出错.

注:这是svn配置文件的格式,请按照以上格式书写。

svnserve.conf文件示例:

anon-access = read
auth-access = write
password-db = passwd
authz-db = authz
realm = /opt/svn/mathPhysics/

四、 SVN启动与停止

4.1 启动SVN服务器

指定仓库路径启动,执行命令:svnserve –d –r 仓库路径 [ --listen-port 端口号 ]
查看服务是否开启,执行命令:ps -ef |grep svn

为了增加svn的安全性,这里将svn的默认端口3690改为6534。
命令执行如下:

指令简介: 此指令用于启动svn服务:
   -d 指明以守护模式运行,
   svn自动在3690端口监听。3690是默认端口,可以使用“–listen-port=”或者“–listen-host=”来指定其它端口。
   -r选项用来指定svn服务的根目录,这样用户就可以使用相对路径访问,而不用提供完整路径。

4.2 停止SVN服务

执行命令:killall svnserve

五、本地配置

  上面六步相当于在服务器上的设置,下面来建立一个本地目录(相对与服务器来说)
1、建本地目录:

mkdir -p 目录名称
cd  目录


2、将文件checkout到本地目录

svn checkout svn://IP:端口号/ --username=指定用户名

输入上述命令后,会弹出一个选项卡,让你填一下密码用户名的东西,自己看着填就可以了

经过上述的步骤,svn的配置基本完成了,之后就可以进行svn命令操作了

这里如果第一次认证失败了,你再次认证时svn会用缓存的文件进行认证,此时你需要先删除缓存文件,操作如下:
(1)找到缓存文件位置:`find / -iname “auth”
(2)进入 auth 目录,删除其下的缓存文件

六、linu下svn配置http与https访问

1、安装配置http访问
  在实际的项目开发中,大家经常使用的还是http连接的方式。下面我们为svn配置http访问。svn的http访问时依赖apache的dav_svn模块,然后赋予www-data访问权限,进行版本控制。

安装apache,配置http访问详见链接: linux服务器部署svn+apache http访问.

2、安装配置https访问
  通过http访问svn版本库虽然方便,但是http协议均采用明文传输,随便在网络上抓包用户名和密码就可能被泄露了,所以考虑采用https传输,安全性比较高,也就是apache+svn+ssl。希望svn支持https,主要的工作是配置 SSL协议(Secure Sockets Layer 安全套接层)

安装ssl,配置https访问详见链接: linux服务器部署svn+apache http + ssl https访问.

七、linux下svn命令操作

参考链接:linux下svn命令使用大全.

八、自启动服务

linux svn设置开机自启动参考链接: linux svn设置开机自启动.
Linux下设置apache httpd服务为自动启动参考链接: Linux下设置apache httpd服务为自动启动.

linux下svn安装与版本控制相关推荐

  1. Linux下SVN安装

    Linux下SVN安装 http://jingyan.baidu.com/article/3c343ff7039de20d37796306.html 转载于:https://www.cnblogs.c ...

  2. Linux下svn 安装搭建配置流程

    Linux下svn搭建配置流程     一.    源文件编译安装.源文件共两个,为: 1.   下载subversion源文件 subversion-1.6.1.tar.gz http://d136 ...

  3. linux svn 自动部署,linux下svn安装和自动部署

    liunx系统下安装svn并自动更新到项目中 三部分:[1.安装 2.建立svn库 3.配置文件]html 查看是否安装了svn [svn –version] 若是安装了svn能够先进行卸载 [sud ...

  4. linux下如何配置svn,Linux下SVN安装与配置详解

    一.前言 SVN服务器有两种运行方式: 1.独立服务器: 2.借助apache: 两种方式各有利弊,独立SVN服务器不结合Apache安装使用,连接独立SVN服务器也不用HTTP协议. 这是比较快捷的 ...

  5. linux的svn无法安装目录,linux下svn安装(ra_dav无法装载之解决办法)

    subversion编译安装 April 29, 2009 by admin · Leave a Comment Filed under: program subversion(svn)是很好的版本管 ...

  6. linux svn导入dump文件,Linux下svn安装配置及备份还原

    一.源码安装 SVN可以yum和源代码安装,上面已经写了yum安装,此处将使用源代码实现SNV的安装.具体步骤如下. 1)安装必要的环境 #yum -y groupinstall "Desk ...

  7. Linux下SVN安装配置全程实录(转)

    一.安装SVN默认安装到/usr/local/bin下面 二.创建仓库 svnadmin create /home/svnrepo /root/svnrepo为所创建仓库的路径,理论上可以是任何目录 ...

  8. 「SVN」Linux下svn使用命令

    原文链接:https://blog.csdn.net/return9/article/details/89042359 Window下SVN安装以及使用 TortoiseSVN下载:https://w ...

  9. linux下svn配置http访问

    linux 服务器部署svn+apache http + ssl https访问 一.其他链接 二.安装配置HTTP访问 2.1 安装Apache HTTP服务 2.2 安装svn模块 2.3 配置 ...

  10. Linux下yum安装SVN服务端

    Linux下yum安装SVN服务端 1.查看yum是否安装 2.安装svn 3.创建目录并配置 4.用户密码passwd配置 5.权限控制authz配置 6.服务svnserve.conf配置 7.启 ...

最新文章

  1. C++拷贝构造函数(复制构造函数)详解
  2. Oracle数据库之集合运算
  3. usockets / 编译 usockets 过程说明
  4. pagefooter如何不占位置_小卫生间如何装修?照着小浴室装修效果图这样装
  5. php 检测键名,【PHP教学|带你学习用PHP检测键名是否位于数组中,方法已经告诉你了,如果你想学就赶紧】- 环球网校...
  6. 银监局计算机英语面试题及答案,2012年国家公务员银监局面试真题及参考答案...
  7. python 网络渗透_python 网络编程(渗透与编程一)
  8. 使用日程安排自动化测试来更好地管理时间与资源
  9. linux虚拟机网卡无法启动
  10. 谈谈你对计算机的发展,结合您目前对计算机的认识,请您谈谈对计算机发展趋势的看法。...
  11. 前道道指令、后道道指令暨先天八卦指令、后天八卦指令
  12. 唱好铁血丹心谐音正规_铁血丹心(谐音歌词)
  13. Java泛型进阶篇: 无界通配符、上界通配符以及下界通配符
  14. 基于NB-IoT物联网人体红外防盗报警检测
  15. 解决visio和office365冲突,无法安装visio问题
  16. 《与君对酒》 徐正坤
  17. kdj超卖_如何正确理解KDJ?
  18. 如何衡量客户满意度?选好方法是关键!
  19. 橙色wamp的可能解决方法
  20. 用手机访问计算机共享资源,手机访问电脑文件 手机与电脑如何共享数据?AirShareUp 云悦享...

热门文章

  1. 开源软件不等于免费软件(弄清开放源代码许可证很重要)
  2. Linux安装jdk详细步骤
  3. 小甲鱼python电子版_小甲鱼学python
  4. 暗黑模式开发一些心得
  5. HbuilderX启动 微信开发者工具
  6. 我的图书《深入浅出线性代数》
  7. SQL注入从入门到精通
  8. C#人脸识别入门篇-STEP BY STEP人脸识别—静态照片人脸检测
  9. 计算机组成白中英答案,计算机组成原理白中英答案
  10. dism 分割镜像_2019系统教程,如何拆分WIM镜像里面多余的子映像、控制体积-映像文件怎么打开...