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

Linux下搭建svn服务器

本文是在CentOS中采用yum安装方式。优点:简单,一键安装,不用手动配置环境变量等。缺点:安装位置为yum默认,比如我们公司服务器上安装软件有自己的规定,一般会采用压缩包安装。

以下是我在CentOS7.2(阿里云服务器)下部署方式,安装步骤如下:

(注 : 红色标记为shell 命令)

一、yum安装subversion

    1. 安装subversion yum install subversion

  2. 查看安装版本,检查安装是否成功 svnserve --version  ,我装的版本为  1.7.14

  3. 查看安装位置  rpm -ql subversion

二、创建版本库

  1.创建用于存放版本库的目录,比如我准备在/usr/local/blue/svn/Code下创建版本库  mkdir -p /usr/local/blue/svn/Code

  2.创建svn版本库,指定为刚才创建的目录 svnadmin create /usr/local/blue/svn/Code

  3.创建完后,版本库目录下会生成一些文件,进入conf目录下。conf目录中authz文件是权限控制文件,passwd是帐号密码文件,svnserve.conf是SVN服务配置文件

  4.修改passwd文件,加入用户,格式就是“用户名=密码”,如:  admin = 123

  5.修改authz文件,加入用户权限:

    [/] 

    admin = rw

   这就表示admin用户对版本库根目录有读写权限(即最高权限了),权限配置方式在authz文件注释中有详细说明

  6.svnserve.conf里面常用的配置有设置匿名用户(默认可读)、授权用户(默认读写)的读写权限,以及指定账号文件(默认passwd)、权限文件(默认authz)的路径等。看起来应该默认值就够了,但实际使用发现还是得手动把相关注释打开,不知道是什么原因。

  7.启动svn版本库 svnserve -d -r  /usr/local/blue/svn/

   其中,-r的作用是设置根目录路径,比如我这样设置后在访问时输入svn://x.x.x.x/就会直接到我的svn目录下(当然在svn目录下是找不到版本库的),如果想访问版本库则输入svn://x.x.x.x/Code即可。

   换句说话,如果启动版本库时命令为svnserve -d -r  /usr/local/blue/svn/Code,则访问svn://x.x.x.x/就能直接到版本库内。

三、常见问题

  1.注意打开端口的访问权限。svn服务的默认端口为3690,比如我部署在阿里云服务器上,必须先在阿里云控制台打开3690端口的外部访问权限。

  2.关闭svn服务的方式是杀掉进程,kill pid或者pkill svnserve

 

    

  

  

 

  

转载于:https://www.cnblogs.com/k-blog/p/7852923.html

相关文章:

  • nodejs的一些局限
  • 操作无法完成。键入的打印机名不正确,或者指定的打印机没有连接到服务器上...
  • 红黑树源码及错误解析
  • 修复垂直滑动RecyclerView嵌套水平滑动RecyclerView水平滑动不灵敏问题
  • 无线网络覆盖 郑州大学第三届acm比赛试题 n 199
  • 回数
  • 生成备案号例如80-027-1-001 规则为:企业编号-所在区号-产品类别-序号
  • 颠覆你的认知,带你领略史上最为齐全的微软黑科技之旅
  • 时代杂志评年度十大科技产品 iPad 2居首
  • 成功恢复FAT32误格式化后所有碎片文件(已覆盖的除外)
  • maya羽毛制作插件
  • 如何使用sendEmail发送邮件
  • TightVNC 企业内部部署
  • 请读者帮忙投个票喔
  • 网吧游戏的三层更新
  • 【翻译】babel对TC39装饰器草案的实现
  • 【跃迁之路】【463天】刻意练习系列222(2018.05.14)
  • CoolViewPager:即刻刷新,自定义边缘效果颜色,双向自动循环,内置垂直切换效果,想要的都在这里...
  • java2019面试题北京
  • JS进阶 - JS 、JS-Web-API与DOM、BOM
  • Linux gpio口使用方法
  • spring-boot List转Page
  • Travix是如何部署应用程序到Kubernetes上的
  • Vue2.x学习三:事件处理生命周期钩子
  • yii2权限控制rbac之rule详细讲解
  • 动手做个聊天室,前端工程师百无聊赖的人生
  • 前端设计模式
  • 如何实现 font-size 的响应式
  • 一份游戏开发学习路线
  • ​ 全球云科技基础设施:亚马逊云科技的海外服务器网络如何演进
  • ​Linux Ubuntu环境下使用docker构建spark运行环境(超级详细)
  • #微信小程序(布局、渲染层基础知识)
  • #我与Java虚拟机的故事#连载01:人在JVM,身不由己
  • (6)设计一个TimeMap
  • (Python) SOAP Web Service (HTTP POST)
  • (Repost) Getting Genode with TrustZone on the i.MX
  • (大众金融)SQL server面试题(1)-总销售量最少的3个型号的车及其总销售量
  • (动手学习深度学习)第13章 计算机视觉---微调
  • (二)Linux——Linux常用指令
  • (四) 虚拟摄像头vivi体验
  • (四)搭建容器云管理平台笔记—安装ETCD(不使用证书)
  • (学习日记)2024.01.09
  • (原创)Stanford Machine Learning (by Andrew NG) --- (week 9) Anomaly DetectionRecommender Systems...
  • (转)JVM内存分配 -Xms128m -Xmx512m -XX:PermSize=128m -XX:MaxPermSize=512m
  • (转)我也是一只IT小小鸟
  • ****** 二 ******、软设笔记【数据结构】-KMP算法、树、二叉树
  • ./mysql.server: 没有那个文件或目录_Linux下安装MySQL出现“ls: /var/lib/mysql/*.pid: 没有那个文件或目录”...
  • .\OBJ\test1.axf: Error: L6230W: Ignoring --entry command. Cannot find argumen 'Reset_Handler'
  • .mkp勒索病毒解密方法|勒索病毒解决|勒索病毒恢复|数据库修复
  • .NET Core WebAPI中使用swagger版本控制,添加注释
  • .net core 微服务_.NET Core 3.0中用 Code-First 方式创建 gRPC 服务与客户端
  • .net 开发怎么实现前后端分离_前后端分离:分离式开发和一体式发布
  • /etc/motd and /etc/issue
  • @ModelAttribute使用详解
  • @RequestBody与@ResponseBody的使用