Centos7搭建SVN代码控制服务器

news2025/1/19 17:10:26

Centos7搭建SVN代码控制服务器

  • 检查SVN是否安装
  • 创建SVN版本库
  • 配置代码库
    • 设置允许访问远程仓库的用户帐号密码
    • 设置权限控制
    • 设置SVN服务配置
  • 启动svn与停止
    • 启动SVN
    • 关闭SVN
  • 访问拉取远程仓库代码

检查SVN是否安装

1、centos7系统自带SVN

 rpm -qa subversion

在这里插入图片描述
2、如果没有则通过yum安装

yum install subversion -y

3、检查已安装版本

svnserve --version

在这里插入图片描述

创建SVN版本库

1、创建项目的根目录(项目要存放的仓库),任意目录都可,习惯放在/home/svn

mkdir -p /home/svn

2、创建项目要存放的位置(必须要在/home/svn根目录下创建)

svnadmin create /home/svn/gulimall

3、查看创建的项目目录
在这里插入图片描述

配置代码库

进入版本库/home/svn/gulimall/conf文件夹下

在这里插入图片描述

  • authz:权限控制文件
  • passwd:帐号密码文件
  • svnserve.conf :SVN服务配置文件

设置允许访问远程仓库的用户帐号密码

vim  passwd

在这里插入图片描述
编辑完后,按Esc键退出编辑模式,输入:wq! 保存文件并退出

注意:这里设置的用户名密码是用于svn://协议访问代码仓库使用的

设置权限控制

vim authz

在这里插入图片描述
1、项目开发中可能有开发组、测试组、实施组…。不直接对特定用户设置权限,而是对组进行授权,将用户加入该组,对应不同的权限。
2、版本库(gulimall)可能会建立多个目录文件(trunk、branches、tags)。来方便项目的管理。可以对不同的项目目录设置不同的用户组访问权限。

  • trunk是主分支,是日常开发进行的地方。
  • branches是分支。一些阶段性的release版本,这些版本是可以继续进行开发和维护的,则放在branches目录中。又比如为不同用户客制化的版本,也可以放在分支中进行开发。
  • tags目录一般是只读的,这里存储阶段性的发布版本,只是作为一个里程碑的版本进行存档。

设置SVN服务配置

vim svnserve.conf

释放如下几行的注释
在这里插入图片描述
到此,svn版本仓库已经搭建完毕了

启动svn与停止

启动SVN

svnserve -d -r /home/svn

让svn以deamon守护进程方式 以root用户启动运行。

注意,这路径不能到gulimall版本库,否则在访问时候会报svn: E170000: URL 'svn://192.168.56.10/gualimall' doesn't exist

查看SVN进程

ps aux | grep svn

在这里插入图片描述

关闭SVN

关闭SVN直接杀进程即可

# kill -9 PID
kill -9 8733

killall svnserve

访问拉取远程仓库代码

1、使用TortoiseSVN客户端工具,SVN Checkout拉取远程仓库代码
在这里插入图片描述

在这里插入图片描述
输入passwd文件中分配的用户名密码
在这里插入图片描述

2、本地库创建目录并add本地库---->commit提交到远程库
add本地库
在这里插入图片描述commit提交到远程库
在这里插入图片描述
4、填写日志并提交
在这里插入图片描述
5、查看远程版本库中提交的项目
在这里插入图片描述

在这里插入图片描述

  1. trunk是主分支,是日常开发进行的地方。
  2. branches是分支。一些阶段性的release版本,这些版本是可以继续进行开发和维护的,则放在branches目录中。又比如为不同用户客制化的版本,也可以放在分支中进行开发。
  3. tags目录一般是只读的,这里存储阶段性的发布版本,只是作为一个里程碑的版本进行存档。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/44227.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

[论文精读|博士论文]面向文本数据的关系抽取关键技术研究

电子科技大学 2022.3.15博士论文 实体关系的方向性语义缺失,使得关系的判别缺乏对文本蕴含语义特征的利用 提出——基于句法关系的方向敏感型句子级关系抽取算法 利用依存句法树结构信息构建双向依存路径结构(新的文本策略解决过度剪裁)额外…

构建直接序列扩频系统模型(Matlab代码实现)

🍒🍒🍒欢迎关注🌈🌈🌈 📝个人主页:我爱Matlab 👍点赞➕评论➕收藏 养成习惯(一键三连)🌻🌻🌻 🍌希…

【分析笔记】全志 i2c-sunxi.c 控制器驱动分析

分析平台:全志 A64 内核版本:Linux 4.9 数据手册:Allwinner_A64_User_Manual_V1.1.pdf (whycan.com) 驱动框架 I2C 设备驱动 作为方案应用来说,我们是最经常要动的地方,这一层主要与具体的芯片功能强关联&#xff0c…

RK3588平台开发系列讲解(USB篇)内核 USB 配置

平台内核版本安卓版本RK3588Linux 5.10Android 12文章目录 一、USB PHY CONFIG二、USB Host CONFIG三、USB OTG CONFIG四、USB Gadget CONFIG沉淀、分享、成长,让自己和他人都能有所收获!😄 📢本篇将介绍USB的相关配置。 USB 模块的配置及保存和其它内核模块的配置方法一…

英语考试的作文模板

考试需要,但是老是忘记,所以发出来备忘~~~~~ 这里写目录标题1 高频考点:正面话题 (能力/事情/习惯/行为/品质/意识/习惯)1.1 题干关键词与结构1.2 开头段1.3 主体段2 一起写范文【正面话题】主体段:重要性怎么做重要性…

【AI学习笔记】jupyter notebook 默认路径修改(超简介,超详细)

文章目录修改前:修改notebook默认路径:1. 找到 Anaconda 的安装目录2. 修改 notebook 安装位置3. 删除"%USERPROFILE%/"内容修改后:【声明:由于我的电脑有 Anaconda3的root环境 和 名为TensorFlow 的 Anaconda虚拟环境&…

操作系统学习笔记(Ⅱ):进程

目录 1 进程 1.1 定义、组成、组织方式与特征 1.定义 2.组成 ​3.组织方式 4.进程的特征 1.2 进程的状态与转换 1.状态 2.进程状态的转换 1.3 进程控制 1.基本概念 2.进程控制相关的原语 1.4 进程通信 1.共享存储 2.消息传递 3.管道通信 1.5 线程概念和多线…

Python数据分析实战-实现模型K折交叉验证(附源码和实现效果)

前面我介绍了可视化的一些方法以及机器学习在预测方面的应用,分为分类问题(预测值是离散型)和回归问题(预测值是连续型)(具体见之前的文章)。 从本期开始,我将做一个数据分析类实战…

mybatisplus savebatch 多数据源时候,sqlSessionFactory 不正确踩坑记录。

记录一下 mybatis-plus sharding-JDBC 的时候,因为配置多数据源和多个SqlSessionFactory导致 mybatisPlus 执行 saveBatch 异常的问题。 具体异常就是 saveBatch 执行的数据源,与期望的不一致。其实是因为 SqlSessionFactory 错误导致的。 项目中有2个…

程序员第一次接私活?记住这三点让你事半功倍

不少程序员都有接私活的想法,但恰恰就如开发者之间的论调一样,接私活其实是有一定难度的,想找到合适的单子,顺利地做完并拿到薪水,需要注意的事儿很多,接下来和大家分享一下,程序员第一次接私活…

改进的多目标差分进化算法在电力系统环境经济调度中的应用(Python代码实现)【电气期刊论文复现】

🎉🎉🎉🎉欢迎您的到来😊😊😊 🥬博客主页:博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 📝床头铭:将来的我一定会感谢…

[附源码]计算机毕业设计springbootSwitch交流平台

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

Android 插件化

demo 如果要加载插件模块编译的apk插件包中的Activity类,需要执行如下流程: 1)加载类对象:使用DexClassLoader加载Activity对应的Class字节码类对象; 2)管理生命周期:处理加载进来的Activity…

【算法自由之路】前缀树 桶排序之计数排序和基数排序

【算法自由之路】前缀树 & 桶排序之计数排序和基数排序 前缀树(字典树) 首先是前缀树,前缀树是由字符构成的树结构,它记录有多少前缀字符通过,以及有多少个同样的字符串,其找这类信息的时间复杂度是极…

minigui编译移植

minigui编译移植 一:文件系统依赖支持二:交叉编译libminigui-1.6.10三:交叉编译mg-samples-1.6.10四:资源minigui-res-1.6.10四:开发板拷贝资源五:/etc/MiniGUI.cfg配置文件修改六:系统环境变量设置一:文件系统依赖支持 zlib libpng libjpeg 二:交叉编译libminigui-1.6.10 conf…

第五届安洵杯网络挑战赛WP

Crypto Cry1 crypto签到题,就是先对SHA256的哈希值进行爆破,然后猜数字 用hashcat一条命令秒穿 hashcat --custom-charset1 ?d?l?u -a 3 -m 1400 3075696ea46516c3a0a43930fab5a0f1c68ea4b315dd87a9cd123dac7f20f3a6 ?1?1?1?1GJWVMYlh5ApWLbF…

MySQL源码分析之SQL函数执行

1.MySQL中执行一条SQL的总体流程 一条包含函数的SQL语句,在MySQL中会经过: 客户端发送,服务器连接,语法解析,语句执行的过程。 调试源码,分析函数的具体执行过程,在客户端,执行select to_char…

【数据结构与算法】初识时间空间复杂度

文章目录1.数据结构与算法概念2.时间复杂度3.大O计数法表示时间复杂度4.线性结构与非线性结构1.数据结构与算法概念 (1)什么是数据结构 数据结构指的是相互之间有一种或者多种特定的关系数据元素集合。数据结构可以分成逻辑结构和物理结构。逻辑结构&a…

全网首发克莱斯勒东南大捷龙jeep道奇DIY数码碟盒增加USB和蓝牙播放音乐功能使用原车接口无损改装

文章目录前言碟盒功能1、设计指标3、外观设计4、PCB设计5、程序设计6、调试7、大捷龙车机尾插接口定义公头东南大捷龙车机白色插头模块与白色插头连接方法8、安装方法9、 使用方法9.1 CD车机按钮功能定义11、 联系我前言 ​ 之前写过四篇关于车机增加音频输入的方法。 1、07宝…

[数据结构] 并查集

并查集相关概念并查集的模拟实现1)实现基本框架2)实现基础操作findRoot查找元素属于哪个集合Union合并两个集合IsOneSet判断两个元素是否属于同一集合SetSize集合个数相关概念 初始时,每个数据的下标都为-1,表示10棵树&#xff1…