《阿里云服务器搭建》------搭建SVN服务

2023-05-16

文章目录

    • 1、查看和卸载SVN
    • 2、安装SVN
    • 3、建立SVN版本库
    • 4、修改配置文件
      • 1. 修改authz文件
      • 2. 修改passwd文件
      • 3. 修改svnserve.conf文件
    • 5、启动与停止
    • 6、windows客户端检出项目


1、查看和卸载SVN

# 查询SVN是否有过低版本SVN(没有安装过则不显示)
rpm -qa subversion
# 卸载SVN
yum remove subversion
# 查看yum源中subversion的版本
yum list subversion

2、安装SVN

# 安装Subversion服务器
yum -y install subversion
# 检查SVN是否安装成功 
svnserve --version

在这里插入图片描述

3、建立SVN版本库

创建保存版本库的目录,命令如下:

#进入home目录
cd /home
# 创建一个文件夹
mkdir svn
# 创建svn版本库
svnadmin create /home/svn/odm
# 检查创建的文件夹
ls

在这里插入图片描述

简单介绍一下目录结构:

  • conf:SVN版本库配置文件(帐号密码权限等)
  • conf/authz:负责账号权限的管理,控制账号是否读写权限
  • conf/passwd:负责账号和密码的用户名单管理
  • conf/svnserve.conf:svn服务器配置文件
  • db:版本库数据存储
  • locks:跟踪目录的访问者

4、修改配置文件

进入到 conf 目录下操作。

1. 修改authz文件

使用vi编辑器打开authz文件,说明如下:
在这里插入图片描述
在文件的中新增如下代码:
在这里插入图片描述

说明:[\] 表示 最大权限,[/文件夹] 表示针对这个文件夹的权限。
rw 表示可读可写,r 表示只读,* = 表示其它用户均无任何权限。

2. 修改passwd文件

使用编辑器打开passwd文件。

格式是 : 账号 = 密码
在这里插入图片描述
添加完成保存退出。

3. 修改svnserve.conf文件

使用编辑器打开svnserve.conf文件

ESC后,输入 :set nu 可显示行号,输入 i可对文件进行编辑。
在这里插入图片描述
配置文件说明:

# 19行,表示非授权(游客)用户访问范围 默认值:read;
anon-access = read
# 20行,表示授权用户访问范围  默认值:write;
auth-access = write
# 27行,表示配置用户及密码保存的文件目录,默认为当前路径下;
# password-db = passwd
# 34行,表示配置用户组及用户权限的保存文件路径;
authz-db = authz
# 39行,表示认证空间名,版本库所在目录;
realm = /home/user/software/svn/odm

注意:

  1. 最后一行的realm记得改成你的svn目录
  2. 打开注释时切记前面不要留有空格,否则可能有问题(网上说的,我没有亲测)

总结:进入到 conf 文件夹的全部命令如下

在这里插入图片描述

5、启动与停止

# 启动
svnserve -d -r /home/svn/odm
# 停止
killall svnserve

上述启动命令中,-d 表示守护进程, -r 表示在后台执行。
在这里插入图片描述
停止还可以采用杀死进程的方式,使用的命令:kill -9 80863

6、windows客户端检出项目

在windows中使用TortoiseSVN,安装完成之后创建一个 svnrep 文件夹存放从服务器检出的svn版本库。

进入svnrep 目录,点击鼠标右键,点击SVN Checkout(检出),输入地址 svn://项目ip:端口 即可,点击确定。

在这里插入图片描述

不出意外弹出用户认证信息,输入用户名和密码就能连接成功了。

在这里插入图片描述

默认端口3690,如果你修改了端口,那么要记得加上端口号。
在这里插入图片描述

检出完成,点击OK。此时该目录下就会出现一个隐藏文件 .svn
在这里插入图片描述
此时就已经成功连接上svn服务器,可以上传代码到服务器上。搭建svn大功告成!!!!

注意:在此链接过程中,如果出现链接不上,首先需要先telnet一下当前svn服务器的3690端口号,看端口是否开通,如果端口是通的,可能是svn服务器与客户端的版本不兼容,如果端口不通,需要开通svn服务器上的3690端口。

使用的防火墙为firewalld方法端口的方式解决如下:

# 开通防火墙3690端口号
[user@localhost ~]# firewall-cmd --zone=public --add-port=3690/tcp --permanent
# 重启防火墙服务
[user@localhost ~]# systemctl restart firewalld.service
# 查看所有打开的端口
[user@localhost ~]# firewall-cmd --zone=public --list-ports

firewalld的基本使用

启动:systemctl start firewalld

关闭:systemctl stop firewalld

查看状态:systemctl status firewalld

开机禁用 :systemctl disable firewalld

开机启用 :systemctl enable firewalld

由于用户认证信息时我们选择了save authentication,但是我们现在用户名或密码输入错误。

解决方法

  1. 在 svnrep 文件夹下右键,选择 setting
    在这里插入图片描述
  2. 在弹出的界面找到 Saved Data 中的 Authentication data,Clear掉已经记住的网站用户密码,重新登录即可。
    在这里插入图片描述

推荐:SVN客户端的安装和使用


如果有收获!!! 希望老铁们来个三连,点赞、收藏、转发。
创作不易,别忘点个赞,可以让更多的人看到这篇文章,顺便鼓励我写出更好的博客
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

《阿里云服务器搭建》------搭建SVN服务 的相关文章

  • svn获取当前用户

    如何获取特定工作站上使用 svn 的当前用户 我可以使用 svn exe 可执行文件和一些开关来获取该信息吗 Thanks 在 Linux 中 您将在主目录中找到以下文件 subversion auth svn simple 在此文件中 您
  • 是否存在比 SVN 更快的集中版本控制?

    我已经使用 SVN 很长时间了 现在我们正在尝试使用 Git 我在这里谈论的不是中心化 去中心化的争论 我唯一关心的是速度 后一个工具要快得多 但有时 我需要使用一种集中式方法 这种方法比分散式方法更简单 更简单 学习曲线非常快 这节省了大
  • 从本地缓存恢复SVN密码

    有没有办法从本地缓存恢复密码 密码必须存储在某处 因为我可以运行 svn co http my svn server foo 但我自己丢失了密码 我是否必须重置它 或者是否可以 以及如何 找到并解密密码 我主要在 Windows 上使用 C
  • 在 Subversion 中,我可以是登录名以外的用户吗?

    我想知道如何获得Subversion更改我的更改显示的名称 我刚刚开始使用Subversion 我目前正在使用它来对 XP 笔记本电脑上的代码进行版本控制 我总是以我妻子的名字登录 我希望 subversion DB 显示我名下的更改 稍后
  • Maven 中不同配置文件的不同 SCM

    在我的项目中 我们必须使用 maben build number 插件来构造 jar 的最终名称 为此我们使用 SCN 的修订版 因此我们需要 SCM 但是我们在无法直接访问的受控环境和本地测试环境上有两个 SVN 因此对于我们的 poup
  • TortoiseSVN 不要求身份验证?

    我已经在conf文件中设置了一个新的SVN存储库 运行SVNServe anon access none SVNServe 忠实地正确地做到了这一点 但是当我尝试使用 TortoiseSVN 浏览存储库时 它只是说不允许访问 它不应该要求我
  • 在 subversion 中看到许多提交的组合差异?

    我被要求审查 SVN 版本号 123 178 199 245 和 288 中所做的更改 这些都是与特定功能相关的提交 解决这个问题的合理方法是什么 我想我真的想以某种方式查看收集的差异 但我愿意接受建议 我们现在正在修订 400 编辑 我想
  • 使用 Maven 外部化 SCM 凭证

    有没有一种方法可以外部化我的 SCM 凭据 以便它们不会存储在项目的 POM 中 问题是 如果它们包含在项目的 POM 中 那么在部署项目时它们将对所有人可见 对于某些 SCM 提供商 您可以在
  • 如何在多个不同的分支上工作,以便我可以在它们之间轻松切换?

    有没有办法在 GIT 中处理同一个文件但不同的功能 分支 我确信有办法 但最简单的方法是什么 我不想隐藏我的更改 因为这很麻烦 借助 SVN 我能够将 2 个独立的分支作为 2 个不同的实体进行工作 无需任何干预 并且可以轻松在两者之间切换
  • 将 git dcommits 切换到 svn 分支

    I had master dcommit到 和rebase来自 颠覆trunk 我创建了一个中间 Subversion 分支tc 合并来自 2 个不同分支的更改 使用 git branch master git svn branch tc
  • 使用“合并修订范围”从分支合并到主干

    我已经像这样在 Subversion TortoiseSVN 中合并了几次 方法一 1 我更改主干并提交 2 我在分支中进行其他更改并提交 3 在主干的工作副本中 我使用 TortoiseSVN 从分支合并 合并一系列修订 4 然后我提交主
  • 是否有 Subversion Checkout Hook 或类似的东西?

    我正在使用 subversion 存储库 并且我想知道何时有人要求我的存储库签出 就像 svn co 或 svn up 每当有人从我的 svn 服务器请求信息时 是否可以使用挂钩或其他方法来运行脚本或发送电子邮件 如何在不依赖 apache
  • ASP.NET 显示 SVN 修订号

    我在 Stack Overflow 页脚中看到显示了 SVN 修订号 这是自动化的吗 如果是的话 如何在 ASP NET 中实现它 其他语言的解决方案也是可以接受的 确保该文件有 svn keywords Rev Id 然后把 Rev 在那
  • 是否可以追溯添加如果执行 svn cp 而不是 cp 时就会存在的历史记录?

    我有一个项目 其中一个目录最初 数百次提交前 从另一个目录逐字复制 但未使用 svn cp 因此历史记录中存在断开连接 现在是否可以在初始复制点连接两个目录 还是太晚了 让我猜猜你在说什么 目录foo处于颠覆状态 在修订版 100 中 有人
  • 对于独立开发人员来说,通过 file:// 访问 Subversion 存储库有什么缺点吗?

    如果您的开发计算机上安装了 Subversion 并且您不在团队中工作 那么您是否有任何理由应该使用 Subversionsvn协议而不是file 如果您自己在一台机器上工作 那么根据我的经验 使用 file 协议效果很好 即使我的团队在远
  • SVN 不断提示我输入密码并拒绝缓存我的凭据

    环境 Eclipse Indigo Ubuntu 11 04 Subclipse 1 6 SVN 客户端 Subclipse RabbitVCS 我通过 svn ssh 连接 我的网址如下所示 svn ssh 我的名字 我的域名 路径 我可
  • svn delete --keep-local 还会阻止文件在更新时被删除吗?

    我在 SO 上看到了很多关于使用 svn delete 和 keep local 标志来将文件保留在本地 同时在存储库中删除它的很好的答案 不幸的是 我无法找到任何有关该文件在更新时是否会从同事计算机上删除的信息 因为该文件已从 svn 中
  • SVN 不会缓存凭据

    我正在使用命令行 svn 客户端 版本 1 6 12 来自 Ubuntu 存储库 但我似乎无法让它缓存我的用户凭据 我正在尝试访问 https svn 存储库 类似于https subversion FAKE com PROJECT htt
  • 相当于 svn 对 Perforce 的责备

    命令行上是否有相当于 svn 对 Perforce 的责备 p4 annotate不显示用户名 仅显示变更集编号 没有祖先历史 我目前必须通过祖先跟踪代码并与文件日志进行比较 并且必须有一种更简单的方法 也许是 F OSS 实用程序 我对b
  • 使用 git-svn (或类似的)*只是*来帮助进行 svn 合并?

    我的项目中出现了一些复杂的颠覆合并 已经分开很长时间的大分支 Svn 给出了太多的冲突 其中一些看起来是虚假的 鉴于git因卓越的合并体验而受到称赞 用起来有什么好处吗git svn just for使合并更易于管理有何好处 你能推荐其他选

随机推荐

  • vscode / idea 使用SVN及查看历史记录

    一 vscode使用 SVN 1 在vscode插件中心搜索svn 进行安装 xff08 我这里已经安装完毕了 xff09 注意 xff1a 插件安装成功 xff0c 需要重新启动软件 安装成功后会出现如下的图标 xff1a 2 桌面右键使
  • int和Integer有什么区别

    面试中会问道int和Integer的区别 xff0c 这里我们详细说一下 Integer是int的包装类 xff1b int是基本数据类型 Integer变量必须实例化后才能使用 xff1b int变量不需要 Integer实际是对象的引用
  • Java 垃圾回收机制与几种垃圾回收算法

    一 如何确定某个对象是 垃圾 xff1f 这一小节先了解一个最基本的问题 xff1a 如果确定某个对象是 垃圾 xff1f 既然垃圾收集器的任务是回收垃圾对象所占的空间供新的对象使用 xff0c 那么垃圾收集器如何确定某个对象是 垃圾 xf
  • Ubuntu18下编译安装torchvision—C++API的详细过程

    最近使用libtorch做网络模型的部署 xff0c 在编写后处理代码时用到了官方自带的nms h文件 xff0c 但该文件需要安装torchvision xff0c 而torchvision并不包含在官方的LibTorch包中 xff0c
  • Element UI 树形控件整合带图标的下拉功能菜单(tree + dropdown + input)

    本文主要讲述 xff1a 自定义树形控件 lt el tree gt 需求说明 xff1a Element UI 官网提供的树形控件包含基础的 可选择的 自定义节点内容的 带节点过滤的以及可拖拽节点的树形结构 如下 xff1a 我想要的效果
  • Vue子组件调用父组件的方法

    子组件 xff1a span class token tag span class token tag span class token punctuation lt span template span span class token
  • Element UI 自定义穿梭框的数据项

    文章目录 需求官网说明实现效果具体步骤附加需求 xff1a 调节穿梭框高宽度 需求 穿梭框中显示的内容是包含多个字段的数据 xff08 把表格的几个字段在穿梭框中展示 xff09 以及修改相应的样式 xff0c 查看 Element UI
  • Vue集成百度的Ueditor的前后端实现

    找了很多写过的文章 xff0c 也具体试验过都写的不太完整 xff0c 这款编辑器借用Vue提供的语法糖实现了数据的双向绑定 xff0c 不用你自己去getContent或setContent 对比其他的富文本编辑器 xff0c Uedit
  • SpringCloud(十)Config配置中心

    微服务就意味着要将单体应用中的业务拆分成一个个子服务 xff0c 每个服务的粒度相对较小 xff0c 因此系统中会出现大量的服务 由于每个服务都需要必要的配置信息才能运行 xff0c 所以一套集中式的 动态的配置管理设施是必不可少的 Spr
  • SpringCloud(十一)Bus消息总线、Stream消息驱动

    一 Bus消息总线 需求 xff1a 分布式自动刷新配置功能 xff1b 解决 xff1a SpringCloud Bus配合Spring cloud Config使用可以实现配置的动态刷新 1 概述 定义 xff1a Spring Clo
  • MySQL数据库面试题(2021最新版)

    文章目录 1 数据库基础知识为什么要使用数据库什么是SQL 什么是MySQL 数据库三大范式是什么MySQL有关权限的表都有哪几个MySQL的binlog有有几种录入格式 xff1f 分别有什么区别 xff1f 2 引擎MySQL存储引擎M
  • SpringCloud(十二)Sleuth分布式请求链路追踪

    为什么会出现这个技术 xff1f 在微服务框架中 xff0c 一个由客户端发起的请求在后端系统中会经过多个不同的的服务节点调用来协同产生最后的请求结果 xff0c 每个前段请求都会形成一条复杂的分布式服务调用链路I链路中的任何一环出现高延时
  • SpringCloud(十三)Alibaba Nacos服务注册和配置中心

    文章目录 SpringCloud Alibaba 简介1 为什么会出现SpringCloud Alibaba2 SpringCloud Alibaba概念3 主要功能4 下载地址5 主要组件 Nacos简介1 概念2 能干什么3 下载地址4
  • Spring Cloud 五大组件(整合业务场景说明)

    文章目录 1 什么是微服务2 Springcloud是什么 Springcloud中的组件有哪些 xff1f 3 组件分别描述下它的原理 xff1f 4 业务场景介绍Eureka xff08 注册发现 xff09 Fegin xff08 远
  • Ubuntu18中调用cv2.imshow及PIL库遇到的bug “: cannot connect to X server”及display-im6.q16: unable to open X。。。

    在Ubuntu18中用Python写一个有关opencv的代码 xff0c 用到了cv2 imshow xff0c 但是运行到这里就会报错 xff1a cannot connect to X server 而我把cv2 imshow注释掉就
  • SpringCloud Alibaba-Sentinel 实现熔断与限流

    文章目录 1 为什么要引入Sentinel xff1f 分布式系统遇到的问题解决方案 2 Alibaba SentinelSentinel是什么Sentinel和Hystrix对比Sentinel快速开始Sentinel资源保护的方式 启动
  • JMeter下载安装及入门教程

    文章目录 JMeter介绍准备工作JMeter下载及环境配置下载配置环境具体使用 JMeter介绍 JMeter使用了不同技术和协议 xff0c 是一款可以进行配置和执行负载测试 性能测试和压力测试的工具 负载测试 性能测试和压力测试概念
  • 谷粒商城【商城系统】完整总结

    文章目录 项目运行的步骤项目源码地址模块说明商城项目基础篇总结项目知识点总结效果图展示 商城项目高级篇总结项目知识点总结效果图展示 项目中遇到的问题1 node版本与sass版本不对应2 测试单元的 64 Test 前面没有运行图标3 前端
  • 《阿里云服务器搭建》------ 安装tomcat

    Tomcat服务器安装 1 官网下载 Tomcat官网下载 xff1a https tomcat apache org download 80 cgi 将 apache tomcat 9 0 41 tar gz 的安装包下载到本地 xff0
  • 《阿里云服务器搭建》------搭建SVN服务

    文章目录 1 查看和卸载SVN2 安装SVN3 建立SVN版本库4 修改配置文件1 修改authz文件2 修改passwd文件3 修改svnserve conf文件 5 启动与停止6 windows客户端检出项目 1 查看和卸载SVN sp