VisualSVN Server实战

文章目录

  • 一、实战概述
  • 二、实战步骤
    • (一)下载VisualSVN Server
    • (二)安装VisualSVN Server
    • (三)使用VisualSVN Server
      • 1、新建仓库
        • (1)新建Repository
        • (2)选择仓库类型
        • (3)指定仓库名称
        • (4)指定仓库初始结构
        • (5)设置仓库访问权限
        • (6)仓库创建成功,记住仓库URL
      • 2、修改认证方式
      • 3、创建用户
        • (1)创建教师用户
        • (2)创建学生用户
        • (3)创建客人用户
      • 4、创建用户组
        • (1)创建管理员用户组
        • (2)创建学生用户组
        • (3)创建客人用户组
      • 5、给不同用户设置不同权限
      • 6、在仓库里创建项目
  • 三、实战总结

一、实战概述

在本次实战中,我们详细介绍了如何从零开始安装并配置VisualSVN Server 5.3.1,以及如何使用它来创建和管理仓库、用户、用户组,并分配不同权限。

首先,下载并安装了VisualSVN Server,在安装过程中根据向导指示设置了服务器端口、认证类型(默认或自定义)及存储仓库路径。安装完成后,通过其直观的管理界面进行后续操作。

在仓库管理部分,我们创建了一个名为“huawei-repository”的Regular FSFS类型的仓库,这是一种高效的Subversion存储库格式,适合大型项目和多用户环境。接着,为仓库指定了初始结构,选择了“Single-project repository”,即专为单个项目设计的单一版本控制仓库。

随后,我们修改了认证方式,由默认的Windows authentication更改为Subversion authentication,以便于独立管理SVN服务账户。

在用户管理环节,我们创建了教师用户(teacher)、多个学生用户(student1, student2, student3)以及客人用户(guest1, guest2),并分别为他们设置了不同的密码。

接下来,我们创建了三个用户组:admin(包含教师用户teacher)、students(包含所有学生用户)和guests(包含客人用户)。通过用户组,可以更方便地集中管理用户的权限。

最后,我们对仓库“huawei-repository”进行了细致的权限设置。赋予admin用户组和students用户组读写权限,而guests用户组仅具有读权限。此外,在仓库内创建了一个名为“StudentManagement”的项目结构,以模拟实际项目开发场景下的应用。

综上所述,本教程全面展示了如何利用VisualSVN Server搭建一个安全、高效且易于管理的版本控制系统环境,实现了从基础架构搭建到权限细化分配的全流程实践。

二、实战步骤

(一)下载VisualSVN Server

  • https://www.visualsvn.com/server/download/
    在这里插入图片描述
  • 下载安装程序到本地
    在这里插入图片描述

(二)安装VisualSVN Server

  • 运行安装程序并按照向导指示进行操作,设置服务器端口、认证类型及存储仓库路径,完成安装后通过管理界面新建仓库和用户权限。
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

(三)使用VisualSVN Server

1、新建仓库

(1)新建Repository
  • 选中Repositories,单击右键,选择新建下的Repository…
    在这里插入图片描述
(2)选择仓库类型
  • Regular FSFS repository” 是 Subversion 版本控制系统中的一种默认且常见的存储库类型。FSFS(File System FileSystem)是一种基于文件系统的存储后端,它将版本控制数据以高效、直接的方式存放在磁盘的普通文件和目录中。相较于早期的 Berkeley DB 存储方式,FSFS 更易于管理、备份和恢复,支持并发写入,并能更好地处理大型项目和多用户环境,是现代Subversion服务器推荐使用的存储库格式。
    在这里插入图片描述
(3)指定仓库名称
  • 仓库名称 - huawei-repository
    在这里插入图片描述
(4)指定仓库初始结构
  • "Single-project repository"是指在版本控制系统中,专为存储和管理单个独立项目的全部历史版本而创建的单一仓库。所有项目文件及其变更历史均集中在此仓库内进行追踪与维护。
    在这里插入图片描述
(5)设置仓库访问权限
  • 最好定制访问权限
    在这里插入图片描述
(6)仓库创建成功,记住仓库URL
  • Respository URL: https://huawei.ied.lz:444/svn/huawei_repository
    在这里插入图片描述
    在这里插入图片描述

2、修改认证方式

  • 由默认的Windows authentication改成Subversion authentication
    在这里插入图片描述
    在这里插入图片描述

3、创建用户

(1)创建教师用户
  • Users | Creat User…
    在这里插入图片描述
  • 用户teacher,密码903213
    在这里插入图片描述
  • 单击【OK】按钮
    在这里插入图片描述
(2)创建学生用户
  • 创建三个用户student1、student2、student3,密码分别为111、222、333
    在这里插入图片描述
(3)创建客人用户
  • 创建两个用户guest1和guest2,密码分别为123、234
    在这里插入图片描述

4、创建用户组

(1)创建管理员用户组
  • Groups | Create Group…
    在这里插入图片描述
  • 创建admin用户组,并添加teacher用户
    在这里插入图片描述
    在这里插入图片描述
(2)创建学生用户组
  • 创建students用户组,添加student1、student2和student3用户
    在这里插入图片描述
(3)创建客人用户组
  • 创建guests用户组,添加guest1与guest2
    在这里插入图片描述

5、给不同用户设置不同权限

  • huawei-repository | 所有任务 | Manage Security…
    在这里插入图片描述
    在这里插入图片描述
    • 设置admin用户组具有读写权限,students组具有读写权限,guests组只具有读权限,而其它任何人没有读写权限。
      在这里插入图片描述

6、在仓库里创建项目

  • huawei-repository | 新建 | Project Structure…
    在这里插入图片描述
  • 输入项目名 - StudentManagement
    在这里插入图片描述
  • 单击【OK】按钮
    在这里插入图片描述
  • 点开StudentManagement
    在这里插入图片描述

三、实战总结

  • 本实战演练详述了在VisualSVN Server 5.3.1中创建仓库、用户、用户组及权限分配的过程,从安装、配置到管理,涵盖了新建Repository、设置FSFS存储库类型、自定义权限,并演示了如何添加用户、创建用户组以实现不同访问级别的控制。最终成功搭建并初始化了一个SVN项目版本库。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Python 折线图的绘制(Seaborn篇-04)

Python 折线图的绘制(Seaborn篇-04)         🍹博主 侯小啾 感谢您的支持与信赖。☀️ 🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹…

基于python socket实现TCP/UDP通信

两个应用程序如果需要进行通讯最基本的一个前提就是能够唯一的标示一个进程,我们知道IP层的ip地址可以唯一标示主机,而TCP层协议和端口号可以唯一标示主机的一个进程,这样我们可以利用ip地址+协议+端口号唯一标示网络中…

论文阅读_CogTree_推理的认知树

英文名称: From Complex to Simple: Unraveling the Cognitive Tree for Reasoning with Small Language Models中文名称: 从复杂到简单:揭示小型语言模型推理的认知树链接: http://arxiv.org/abs/2311.06754v1代码: https://github.com/alibaba/EasyNLP作者: Junbi…

深入解析 JavaScript 中的 setTimeout() 和 setInterval()

🧑‍🎓 个人主页:《爱蹦跶的大A阿》 🔥当前正在更新专栏:《VUE》 、《JavaScript保姆级教程》、《krpano》、《krpano中文文档》 ​ ​ ✨ 前言 setTimeout() 和 setInterval() 是 JavaScript 中非常常用的定时函数…

Django从入门到精通(一)

目录 一、Django环境搭建与命令 1.1、安装 1.2、命令行 创建项目 编写代码 运行 app概念 1.3、Pycharm创建项目 1.4、虚拟环境 创建虚拟环境 - 命令行 介绍 操作 基本问题 Pycharm 项目虚拟环境 django虚拟环境【安装django最新版本】 django虚拟环境【安装指…

frida https抓包

web端导入证书、https代理即可解决大部分需求,但是,有些app需要处理ssl pinning验证。 废话不多说。frida处理ssl pin的步骤大体如下。 安装python3.x,并在python环境中安装frida: pip install frida pip install frida-tools下载frida-se…

【设计模式】你知道游戏SL大法是什么设计模式吗?

什么是备忘录模式? 老规矩,我们先来看看备忘录模式 (Memento) 的定义:在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样以后就可将该对象恢复到原先保存的状态。 它的UML类图如下&a…

Django(八)

1. 管理员操作 1.1 添加 from django.shortcuts import render, redirectfrom app01 import models from app01.utils.pagination import Paginationfrom django import forms from django.core.exceptions import ValidationError from app01.utils.bootstrap import BootStr…

【MySQL】where和having的区别

🍎个人博客:个人主页 🏆个人专栏:数据库 ⛳️ 功不唐捐,玉汝于成 目录 前言 正文 用途: 使用位置: 操作对象: 聚合函数: 示例: 结语 我的其他博客 前言 数据库中的 WHERE 和 HAVING 子句在 SQL 查…

排序算法整理

快速排序 C实现 void fastStore(int *a, int start, int end){if(start>end)return ;int leftstart;int rightend;int tempa[left];//设置基准值tempwhile(left < right) //左指针的位置一定小于右指针的位置{while(a[right]>temp && left < right) //左…

RabbitMQ-消息延迟

一、死信交换机 1、描述 一个队列接收到的消息有过期时间&#xff0c;消息过期之后&#xff0c;如果配置有死信队列&#xff0c;消息就会进去死信队列。 2、图解 3、过程 当生产者将消息发送到exchange1&#xff0c;然后交换机将消息路由到队列queue1&#xff0c;但是队列que…

快速入门:使用 Gemini Embeddings 和 Elasticsearch 进行向量搜索

Gemini 是 Google DeepMind 开发的多模态大语言模型家族&#xff0c;作为 LaMDA 和 PaLM 2 的后继者。由 Gemini Ultra、Gemini Pro 和 Gemini Nano 组成&#xff0c;于 2023 年 12 月 6 日发布&#xff0c;定位为 OpenAI 的竞争者 GPT-4。 本教程演示如何使用 Gemini API 创建…

浅析Java中volatile关键字

认识volatile关键字 Java中的volatile关键字用于修饰一个变量&#xff0c;当这个变量被多个线程共享时&#xff0c;这个变量的值如果发生更新&#xff0c;每个线程都能获取到最新的值。volatile关键字在多线程环境下还会禁止指令重排序&#xff0c;确保变量的赋值操作按照代码的…

书生·浦语大模型实战营-学习笔记4

XTuner 大模型单卡低成本微调实战 Finetune简介 常见的两种微调策略&#xff1a;增量预训练、指令跟随 指令跟随微调 数据是一问一答的形式 对话模板构建 每个开源模型使用的对话模板都不相同 指令微调原理&#xff1a; 由于只有答案部分是我们期望模型来进行回答的内容…

敏捷测试和DevOpes自动化测试的区别

敏捷测试和DevOps自动化测试在以下方面存在区别&#x1f447; 1️⃣目标 &#x1f388;敏捷测试的主要目标是提供快速的反馈和持续的改进&#xff0c;以便在开发过程中尽早发现和解决问题&#xff0c;从而提高软件的质量和可靠性。 &#x1f308;DevOps自动化测试的目标是提高软…

C语言算法赛——蓝桥杯(省赛试题)

一、十四届C/C程序设计C组试题 十四届程序C组试题A#include <stdio.h> int main() {long long sum 0;int n 20230408;int i 0;// 累加从1到n的所有整数for (i 1; i < n; i){sum i;}// 输出结果printf("%lld\n", sum);return 0; }//十四届程序C组试题B…

统计学-R语言-7.1

文章目录 前言假设检验的原理假设检验的原理提出假设做出决策表述结果效应量 总体均值的检验总体均值的检验(一个总体均值的检验) 练习 前言 本章主题是假设检验(hypothesis testing)。与参数估计一样&#xff0c;假设检验也是对总体参数感兴趣&#xff0c;如比例、比例间的差…

负载均衡流程

1、负载均衡流程图 2、触发负载均衡函数trigger_load_balance void trigger_load_balance(struct rq *rq) { /* Dont need to rebalance while attached to NULL domain */ if (unlikely(on_null_domain(rq)))//当前调度队列中的调度域是空的则返回 return; i…

SpringMVC数据校验

导包 配置springmvc.xml <bean id"validator" class" org.springframework.validation.beanvalidation.LocalValidatorFactoryBean"><property name"providerClass" value"org.hibernate.validator.HibernateValidator ">…

『C++成长记』模板

&#x1f525;博客主页&#xff1a;小王又困了 &#x1f4da;系列专栏&#xff1a;C &#x1f31f;人之为学&#xff0c;不日近则日退 ❤️感谢大家点赞&#x1f44d;收藏⭐评论✍️ 目录 一、泛型编程 二、函数模板 &#x1f4d2;2.1函数模板概念 &#x1f4d2;2.2函数…