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

svnserver搭建

1.首先下载svn
$ sudo apt-get install subversion
(假设不能安装先更新库再试,sudo apt-get update)


2.加入svn管理用户及subversion组
$ sudo adduser svnuser
$ sudo addgroup subversion
$ sudo addgroup svnuser subversion 


3.创建仓库目录:
$ cd /home/wantianpei/svn
$ sudo mkdir MySVNRepo
$ sudo chown -R root:subversion MySVNRepo
$ sudo chmod -R g+rws MySVNRepo


4.接下来。将刚才创建的目录设置为 SVN的版本号仓库:
$ sudo svnadmin create /home/wantianpei/svn/MySVNRepo


5、 设置訪问权限
位于/home/svn/myProject/conf/目录下的authz、passwd、svnserve.conf文件
svnserve.conf:svn服务配置文件。该文件版本号库文件夹的conf文件夹下。 
passwd:username口令文件,该文件名称在文件svnserve.conf中指定。缺省为同文件夹下的。

 
authz:权限配置文件。该文件名称也在文件svnserve.conf中指定,缺省为同文件夹下的。


(1)设置svnserve.conf
# vim svnserve.conf
取消一下四行的凝视
anon-access = read
auth-access = write
password-db = password
authz-db = authz
并将anon-access = read的read改为none,禁止匿名用户訪问。


(2)设置passwd
# vim passwd
[users]
admin = admin
user = user
设置两个用户admin和user
(3)设置authz
# vim authz
[groups]
admin = admin
user = user
[/]
@admin=rw
*=r
admin属于admin组,具有读写权限。
user用户属于user组,具有读权限。


6.然后将项目导入版本号仓库中去
$ sudo svn import -m “test” /home/wantianpei/test_svn/   file:///home/wantianpei/svn/MySVNRepo
格式为 “$ svn import -m “Log信息”/项目路径 file:///仓库路径 ”
权限不够时,使用sudo运行。


7、server启动svn服务
svnserve -d -r /home/wantianpei/svn/MySVNRepo
(查看svnserve服务是否起来:ps aux | grep svnserve  结束svnserve服务:killall svnserve) 


8. svn服务启动后,就是从版本号仓库中下载下来项目了,假设是本机下载,使用
$ svn co file://home/wantianpei/svn/MySVNRepo /home/workCopy
将项目下载到目标目录中就可以。我设置的是/home/workCopy中。
假设是局域网内其它机子。假设启用svnserve的机子ip是192.168.98.129,使用
$ svn co svn://192.168.98.129 /home/workCopy
以 “$ svn co svn://svnserve机ip地址 本机存放文件夹” 的格式,就能够将svnserve上的项目下载到


局域网内机子的文件夹里了。




相关文章:

  • Android视图绘制流程完全解析,带你一步步深入了解View(二)
  • OTS工作坑
  • GDB调试详解
  • Tomcat和JavaWeb目录和流程
  • 采访与书评 —— 《BDD In Action》
  • android下拉刷新
  • AOP之AspectJ注解
  • httpclient-4.0.1应用指南
  • 05-树7 堆中的路径
  • 初识 Swift编程语言(中文版)
  • Learning WCF Chapter1 Creating a New Service from Scratch
  • Navicat Premium快速导出数据库ER图和数据字典
  • java存取BLOB类型的数据
  • [WebGL入门]二十五,点光源的光照
  • .NET微信公众号开发-2.0创建自定义菜单
  • 网络传输文件的问题
  • [rust! #004] [译] Rust 的内置 Traits, 使用场景, 方式, 和原因
  • 【跃迁之路】【585天】程序员高效学习方法论探索系列(实验阶段342-2018.09.13)...
  • CAP理论的例子讲解
  • Computed property XXX was assigned to but it has no setter
  • Git初体验
  • Hexo+码云+git快速搭建免费的静态Blog
  • Javascript 原型链
  • Java编程基础24——递归练习
  • React Transition Group -- Transition 组件
  • tab.js分享及浏览器兼容性问题汇总
  • vue学习系列(二)vue-cli
  • Web Storage相关
  • 函数式编程与面向对象编程[4]:Scala的类型关联Type Alias
  • 基于OpenResty的Lua Web框架lor0.0.2预览版发布
  • 前端学习笔记之原型——一张图说明`prototype`和`__proto__`的区别
  • 人脸识别最新开发经验demo
  • 什么软件可以剪辑音乐?
  • 思考 CSS 架构
  • 微信开源mars源码分析1—上层samples分析
  • 想写好前端,先练好内功
  • 一些基于React、Vue、Node.js、MongoDB技术栈的实践项目
  • 原生JS动态加载JS、CSS文件及代码脚本
  • 如何用纯 CSS 创作一个菱形 loader 动画
  • 专访Pony.ai 楼天城:自动驾驶已经走过了“从0到1”,“规模”是行业的分水岭| 自动驾驶这十年 ...
  • ​DB-Engines 12月数据库排名: PostgreSQL有望获得「2020年度数据库」荣誉?
  • ###C语言程序设计-----C语言学习(6)#
  • ( )的作用是将计算机中的信息传送给用户,计算机应用基础 吉大15春学期《计算机应用基础》在线作业二及答案...
  • (32位汇编 五)mov/add/sub/and/or/xor/not
  • (安卓)跳转应用市场APP详情页的方式
  • (二)丶RabbitMQ的六大核心
  • (分类)KNN算法- 参数调优
  • (考研湖科大教书匠计算机网络)第一章概述-第五节1:计算机网络体系结构之分层思想和举例
  • (未解决)macOS matplotlib 中文是方框
  • (一)SpringBoot3---尚硅谷总结
  • (一)认识微服务
  • (转)c++ std::pair 与 std::make
  • (转)IIS6 ASP 0251超过响应缓冲区限制错误的解决方法
  • .naturalWidth 和naturalHeight属性,
  • .NET 设计模式初探