SVN服务器在Ubuntu16.04下搭建多版本库详细教程
来源:互联网 发布:js动画库 编辑:程序博客网 时间:2024/06/04 19:27
1 介绍
Subversion是一个自由,开源的版本控制系统,这个版本库就像一个普通的文件服务器,不同的是,它可以记录每一次文件和目录的修改情况。这样就可 以很方面恢复到以前的版本,并可以查看数据更改细节。目前,Subversion已成为主流的开源代码版本管理软件之一,简称SVN。
- 安装和服务器搭建
执行下列指令安装
sudo apt-get install subversion
3 创建版本库
3.1先创建目录文件夹
sudo mkdir /home/svnsudo mkdir /home/svn/project1sudo mkdir /home/svn/project2
3.2创建第一个项目project1 第二个项目project2
svnadmin create /home/svn/project1svnadmin create /home/svn/project2
为了便于管理,将所有版本库的密码和权限设置在同一个文件下面,操作步骤如下:
4.1 取出project1下面conf文件夹下的authz和passwd两个文件到svn根目录下面
4.2 修改每个版本库目录conf文件夹下面的svnserve.conf文件, 将
# anon-access = read ,#auth-access = write ,# password-db = passwd,#authz-db = authz 修改为:anon-access = none ,auth-access= write,password-db = ../../passwd,authz-db = ../../authz (password-db = ../../passwd,authz-db = ../../authz代表相对路径而非绝对路径)
定义一下几个角色用来测试
5.1 配置管理员(svnadmin),用来管理整个库
5.2 项目经理(manage),用来相关管理文档
5.3 开发人员 (dev),测试开发是否正常
下面添加角色
打开svn目录下的passwd文件,创建方法是在[user]下面添加 username = passwd,记得“=”前后的空格,如下图:
(svnadmin控制所有项目,统一管理)
为角色分配权限:
假设(quxin是project1的项目经理,huzhixin是project2的项目经理,dev1、dev2是project1 的开发人员,dev3、dev4是project2的开发人员,test1是 project1的测试人员,test2是project2的测试人员)库目录及具体权限如下图所示:
具体权限:(根目录下,svnadmin拥有所有权限,其他人只有读权限,要设置子目录权限,需设置子目录上级的权限方可,设置个别文件权限如下:)
8启动svn服务
8.1一次启动
sudo svnserve -d -r /home/svn
查看是否启动成功,可看的监听3690端口
sudo netstat -antp |grep svnservetcp 0 0 0.0.0.0:3690 0.0.0.0:* LISTEN 28967/svnserve
如果想关闭服务,可使用pkill svnserve
8.2.开机自启动svn
在/etc/init.d目录建立一个脚本文件svnd.sh
cd /etc/init.dsudo touch svnd.shsudo chmod 755 svnd.shsudo vim svnd.sh
输入如下内容:
ubuntu 16.04中一定要加上以下LSB信息,不然放入启动脚本的时候会报错无法开机启动。
#!/bin/bash### BEGIN INIT INFO# Provides: svnd.sh# Required-start: $local_fs $remote_fs $network $syslog# Required-Stop: $local_fs $remote_fs $network $syslog# Default-Start: 2 3 4 5# Default-Stop: 0 1 6# Short-Description: starts the svnd.sh daemon# Description: starts svnd.sh using start-stop-daemon### END INIT INFO
更新修改权限:
sudo update-rc.d svnd.sh defaults 95
注:其中数字95是脚本启动的顺序号,按照自己的需要相应修改即可。在你有多个启动脚本,而它们之间又有先后启动的依赖关系时你就知道这个数字的具体作用了。
(若提示权限不足,请用sudo执行)
8.4 卸载启动脚本的方法:
$ cd /etc/init.d$ sudo update-rc.d -f svnd.sh remove
9 工具
SVN 服务器端:Subversion 1.5 ,客户端 TrotoiseSVN 1.5 (https://tortoisesvn.net/downloads.html)
10访问版本库地址
svn://172.16.26.28/project1
svn://172.16.26.28/project2
原文地址:http://www.cnblogs.com/lovechen/p/5716213.html
- SVN服务器在Ubuntu16.04下搭建多版本库详细教程
- Ubuntu16.04下搭建svn服务器
- 在Windows7下安装Ubuntu16.04双系统 +在Ubuntu16.04下tensorflow-gpu的搭建(详细图文教程)
- 在Ubuntu16.04下搭建 Smaba服务器
- 搭建SVN服务器详细教程
- 搭建SVN服务器详细教程
- 搭建SVN服务器详细教程
- 搭建SVN服务器详细教程
- (一) Linux Centos7下SVN服务器搭建详细教程
- linux下多版本库svn独立服务器搭建
- SVN源码服务器搭建-详细教程
- SVN源码服务器搭建-详细教程
- SVN源码服务器搭建-详细教程
- SVN源码服务器搭建-详细教程
- SVN源码服务器搭建-详细教程
- SVN源码服务器搭建-详细教程
- SVN源码服务器搭建-详细教程
- SVN源码服务器搭建-详细教程
- jQuery-AJAX VS vue-resource.js
- Web Service 接口调用
- gem安装ruby包无法建立本地环境(failed to build gem native extension)
- 关于链表中去掉重复数值的问题
- linux下curl作用及重要函数
- SVN服务器在Ubuntu16.04下搭建多版本库详细教程
- 函数参数为函数指针
- TCP/IP、Http的区别
- 深入探讨 CSS 特性检测 @supports 与 Modernizr
- Learning a Part of C++(for ACM/ICPC) (1) 简介
- Linux下/proc目录简介
- r语言怎么做ROC曲线
- poj2481 Cows(树状数组)
- 在arcgis中提取、添加与删除Shape文件Z值