Centos7下SVN环境部署及使用记录

Posted hujinzhong

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Centos7下SVN环境部署及使用记录相关的知识,希望对你有一定的参考价值。

1)SVN简介

Subversion(SVN) 是一个开源的版本控制系統, 也就是说 Subversion 管理着随时间改变的数据。 这些数据放置在一个中央资料档案库(repository) 中。 这个档案库很像一个普通的文件服务器, 不过它会记住每一次文件的变动。 这样你就可以把档案恢复到旧的版本, 或是浏览文件的变动历史。

1.1 SVN相关概念

repository:源代码库,源代码统一存放的位置

Checkout:提取,当你手上没有源代码的时候,你需要从repository checkout一份

Commit:提交,当你已经修改了代码,你就需要Commit到repository

Update:更新,当你已经Checkout了一份源代码, Update一下你就可以和Repository上的源代码同步,你手上的代码就会有最新的变更

2)SVN安装

大多数 GNU/Linux 发行版系统自带了Subversion,以centos7为例:

[root@svn-server ~]# svn --version
svn, version 1.7.14 (r1542130)
   compiled Apr 11 2018, 02:40:28

Copyright (C) 2013 The Apache Software Foundation.
This software consists of contributions made by many people; see the NOTICE
file for more information.
Subversion is open source software, see http://subversion.apache.org/

The following repository access (RA) modules are available:

* ra_neon : Module for accessing a repository via WebDAV protocol using Neon.
  - handles ‘http‘ scheme
  - handles ‘https‘ scheme
* ra_svn : Module for accessing a repository using the svn network protocol.
  - with Cyrus SASL authentication
  - handles ‘svn‘ scheme
* ra_local : Module for accessing a repository on local disk.
  - handles ‘file‘ scheme

我们可以使用yum install subversion 命令进行安装。

3)SVN生命周期

创建版本库:

Create 操作是用来创建一个新的版本库,版本库不仅能存放文件,还包括了每次修改的历史,即每个文件的变动历史。

检出:

Checkout 操作是用来从版本库创建一个工作副本。工作副本是开发者私人的工作空间,可以进行内容的修改,然后提交到版本库中。

更新:

update 操作是用来更新版本库的。这个操作将工作副本与版本库进行同步

执行变更:

复查变化:

Status 操作列出了工作副本中所进行的变动

修复错误:

Revert 操作重置了对工作副本的修改。它可以重置一个或多个文件/目录。当然它也可以重置整个工作副本。在这种情况下,revert 操作将会销毁待变更列表并将工作副本恢复到原始状态。

解决冲突:

Merge 操作会自动处理可以安全合并的东西

Resolve 操作就是用来帮助用户找出冲突并告诉版本库如何处理这些冲突。

提交更改:

Commit 操作是用来将更改从工作副本到版本库

4)SVN启动模式

[root@svn-server ~]# mkdir /opt/svn  #创建版本库目录
[root@svn-server ~]# svnadmin create /opt/svn/lawrence  #创建版本库
使用svnserve启动服务
svnserve -d -r 目录 --listen-port 端口号
-r:配置方式决定了版本库的访问方式
--listen-port: 指定SVN监听端口,不加此参数,SVN默认监听3690
4.1 单库svnserve启动方式
svnserve -d -r /opt/svn/runoob

以上是关于Centos7下SVN环境部署及使用记录的主要内容,如果未能解决你的问题,请参考以下文章

CentOS7安装配置svn及svn hook实战

Centos7.4下部署PowerDNS的操作记录

CESM部署安装环境和使用

Centos7下ELK+Redis日志分析平台的集群环境部署记录

Nginx在linux环境下(centos7)的安装负载均衡设置

centos7服务器搭建javaweb运行环境及代码部署