当前位置: 首页 > news >正文

Centos7部署SVN

文章目录

    • (1)SVN概述
    • (2)SVN与Samba共享
    • (3)安装SVN
    • (4)SVN搭建实例
    • (5)pc连接svn服务器
    • (6)svn图标所代表含义

(1)SVN概述

SVN(Apache Subversion)是一个开放源代码的版本控制系统,用于管理和跟踪文件和目录的变化。它采用分支管理系统,并旨在取代CVS。以下是关于SVN安装和搭建的基本概述以及Windows连接的步骤:

(2)SVN与Samba共享

SVN还可以用作于企业内部共享,之前就这么干过,其实还行,如果文件大,对本地机器不太友好,但是好处就是存在多个备份。

相对于Samba共享,它具有一些不同的优势。以下是SVN相对于Samba共享的一些优势:

  1. 版本控制功能:SVN是一个专门为版本控制而设计的工具,它可以跟踪和管理文件和目录的变化,记录每个版本的修改历史,并支持回滚到以前的版本。这使得团队成员可以轻松地协同工作、共享和管理文件,并且可以方便地查看和比较不同版本之间的差异。
  2. 文件锁定机制:SVN提供了文件锁定机制,可以防止多个用户同时编辑同一个文件而引起的冲突。当一个用户锁定文件时,其他用户无法编辑该文件,从而避免了冲突和数据丢失的风险。这对于团队合作和协同开发非常有用。
  3. 权限控制:SVN提供了灵活的权限控制机制,可以根据用户和用户组设置不同的访问权限。管理员可以精确地控制用户对仓库和文件的读写权限,从而确保敏感数据的安全性和保密性。
  4. 分支和合并:SVN支持分支和合并操作,可以创建和管理不同的分支,使团队可以同时进行不同的开发工作。分支可以独立开发和测试,然后合并回主线,从而实现并行开发和代码管理的灵活性。
  5. 更精细的版本控制:SVN可以跟踪文件和目录的每个修改,包括添加、删除、重命名和移动等操作。这使得团队可以更精细地控制和管理文件的变化,以及查看和恢复到特定的修改点。

总的来说,SVN相对于Samba共享在版本控制、文件锁定、权限控制、分支和合并等方面提供了更强大和灵活的功能,适用于需要更高级别文件管理和协作的企业内部共享环境。

(3)安装SVN

  1. 检查防火墙状态:systemctl status firewalld.service
    在这里插入图片描述
  2. 关闭防火墙:systemctl stop firewalld.service
  3. 检查是否已安装SVN:rpm -qa subversion
  4. 查看已安装版本的详细信息:svnserve --version
  5. 如果未安装SVN,使用以下命令安装:yum install subversion -y

(4)SVN搭建实例

  1. 修改svnserve.conf配置文件:

    • 打开配置文件:vi /home/Admindept/conf/svnserve.conf
    • 去除以下注释:
      • anon-access=none(匿名用户不可访问)
      • auth-access=write(授权用户可写)
      • password-db=passwd(使用哪个文件作为账号文件)
      • authz-db=authz(使用哪个文件作为权限文件)
      • realm=/home/Admindept(认证空间名,设置版本库所在目录)
  2. 创建项目:

    • 创建hr项目:svnadmin create /home/Admindept
    • 创建ops项目:svnadmin create /home/opertion
  3. 启动SVN服务:

    • 默认使用3690端口:svnserve -d -r /home/Admindept/
    • 如果启动第二个SVN需要指定3691端口:svnserve -d -r /home/opertion/ --listen-port 3691
  4. 添加用户和密码:

    • 打开passwd文件:vi /home/Admindept/conf/passwd
    • 在文件中添加用户和密码,例如:josh = josh@2023#annie = annie@2023#
  5. 设置控制权限:

    • 打开authz文件:vi /home/Admindept/conf/authz

    • 在文件中设置权限,例如:

      hr = annie,josh
      ops = josh[/]
      @ops = rw
      @hr = rw[/hr]
      @hr = rw
      @ops = rw
      *=
      
  6. 关于配置文件的介绍:

    • authz:权限控制文件,用于授权用户和组。
    • passwd:帐号密码文件,用于连接SVN仓库。
    • svnserve.conf:SVN服务配置文件,设置访问控制和认证空间。

(5)pc连接svn服务器

TortoiseSVN在windows非常受到欢迎的一套客户端软体,它与档案总管整合得相当不错,可以透过档案总管在档案或目录上用滑鼠右键的选单完成SVN的操作。

1. 安装TortoiseSVN客户端

svn客户端软件获取地址:http://tortoisesvn.net/downloads/

2. svn客户端安装

双击软件包进行安装,然后下一步下一步直至安装结束即可。

在这里插入图片描述

next
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

3. 使用svn客户端

注意:SVN客户端安装完成之后,需要重启客户端主机。

连接步骤如下:

  1. 连接SVN服务器,本地创建一个用于存放svn本地仓库的文件夹,右击选择:SVN Checkout
    在这里插入图片描述

  2. 连接到SVN服务器:svn://192.168.217.128:3690/

在这里插入图片描述

输入SVN的账户密码
在这里插入图片描述

如果内容较多,可能需要等待…拉取
在这里插入图片描述

(6)svn图标所代表含义

  • 常规图标:当客户端文件和服务端文件完全同步时,显示以上图标
    在这里插入图片描述
  • 冲突图标:当客户端提交的文件和服务器端数据有冲突
    在这里插入图片描述
  • 删除图标:当服务端数据已删除,客户端该文件显示以上图标
    在这里插入图片描述
  • 增加图标:当我们编写的文件添加到提交队列,系统自动显示
    在这里插入图片描述
  • 无版本控制图标:当我们编写的文件没有添加到上传队列时
    在这里插入图片描述
  • 修改图标:当有文件有修改但未提交
    在这里插入图片描述
  • 只读图标:当客户端文件以只读形式存在时
  • 在这里插入图片描述
  • 锁定图标:当服务端数据已锁定,客户端自动显示
    在这里插入图片描述
  • 忽略图标:客户端文件已忽略,不需要进行提交上传
    在这里插入图片描述
  • 忽略功能如何只忽略某个指定文件,效果如下:
    在这里插入图片描述
    忽略某一类型的文件,如excel的.xlsx文件
    在这里插入图片描述
http://www.lryc.cn/news/261182.html

相关文章:

  • Vue中this.$nextTick的执行时机
  • Unity中的ShaderToy
  • 2 使用postman进行接口测试
  • 【数据库设计和SQL基础语法】--查询数据--聚合函数
  • Module ‘app‘: platform ‘android-33‘ not found.
  • MySQL按序批量操作大量数据
  • strict-origin-when-cross-origin
  • 【置顶】 本博博文汇总
  • react.js源码二
  • 如何学习英语
  • robot测试自动化
  • Linux---重定向命令
  • 小区生活污水处理需要哪些设备和工艺
  • 【高性能计算】Cpp + Eigen + Intel MKL + 函数写成传引用
  • 【教学类-05-02】20231216 (比大小> <=)X-Y之间的比大小88题(补全88格子,有空格分割提示)
  • 【Spark精讲】Spark与MapReduce对比
  • SQL错题集3
  • Elasticsearch:使用 OpenAI 生成嵌入并进行向量搜索 - nodejs
  • [python高级编程]:02-类
  • java.lang.UnsupportedOperationException异常解决
  • openmediavault debian linux安装配置企业私有网盘(三 )——raid5与btrfs文件系统无损原数据扩容
  • Two Phase Termination(两阶段)设计模式
  • 闲人闲谈PS之四十九——PLM和SAP集成常见的问题
  • 帆软BI目录
  • (第8天)保姆级 PL/SQL Developer 安装与配置
  • 【CSS】前端点点点加载小点样式css动画过程实现
  • 【LeetCode: 2415. 反转二叉树的奇数层 | BFS + DFS】
  • 期货股市联动(期股联动助推资本市场上扬)
  • 生成式AI的力量,释放RPA的无限潜能
  • 【leetcode】链表总结