在ubuntu环境下部署svn可视化管理工具iF.SVNAdmin详细教程
haoteby 2025-05-02 10:29 24 浏览
SVN作为一款优秀的版本管理工具,若使用svn server来管理,在版本库和用户角色权限分派时还是存在众多不变。
通常公司会搭建独立的svn服务器来统一进行资料管理,若每次都需要开发人员去给用户划分权限或者新增用户,花费的时间成本还是很高昂的,甚至会打乱程序员的思维。
若是将这个复杂的操作集成在一个管理工具中,通过简单的操作来完成,不但可以避免打扰程序员还可以将系统开放给专门的资料管理员来维护,整个工作流程将大大规范。
IF.SVNadmin就是一个优秀的SVN服务web管理工具,安装非常简单,因为只是单纯的通过命令去执行用户权限管理操作,因此不需要数据库支持,安装后可以在web管理用户及权限等功能,使用起来非常方便。
鉴于目前搜索到的安装资料均属于相互拷贝黏贴,还存在各种错误,要么直接删减,导致许多用户部署失败。下面我将整个安装过程和使用过程详细整理,供大家参考:
一、系统环境
Ubuntu 18.04
二、运行环境
apache2 + php7.2 +subversion + iF.SVNAdmin-stable-1.6.2
三、安装php7.2
sudo apt-get install software-properties-common python-software-properties
sudo add-apt-repository ppa:ondrej/php && sudo apt-get update
sudo apt-get -y install php7.2
安装时注意检查是否安装成功
四、安装apache2
sudo apt install apache2
sudo apt-get install libapache2-mod-php
sudo a2enmod dav_svn
五、安装subversion
sudo apt-get install subversion subversion-tools libapache2-svn
六、创建版本库
sudo mkdir /opt/svnrepositories
sudo svnadmin create /opt/svnrespsitories/document
# 配置文件移到根目录
sudo cp -r /opt/svnrespsitories/document/conf /opt/svnrespsitories/
#这里需要注意,在ubuntu 下apache2的账户是www-data
chown -R www-data:www-data /opt/svnrespsitoriess
sudo chmod -R 777 /opt/svnrespsitories
# 移除authz和passwd
sudo rm /opt/svnepositories/authz
sudo rm /opt/svnepositories/passwd
#编辑svnserve.conf
sudo vi /opt/svnepositories/conf/svnserve.conf
打开
anon-access = read
auth-access = write
password-db = passwd
authz-db = authz
七、配置apache
sudo vim /etc/apache2/mods-available/dav_svn.conf
LoadModule dav_svn_module /usr/lib/apache2/modules/mod_dav_svn.so
LoadModule authz_svn_module /usr/lib/apache2/modules/mod_authz_svn.so
<Location /svn>
DAV svn
SVNParentPath /opt/svnrepositories
AuthType Basic
AuthName "Authorization SVN"
AuthUserFile /opt/svnrepositories/conf/passwd
AuthzSVNAccessFile /opt/svnrepositories/conf/authz
Require valid-user
</Location>
修改000-default.conf
sudo vi /etc/apache2/sites-available/000-default.conf
# 改成127.0.0.1
ServerName 127.0.0.1
八、安装iF.SVNAdmin
wget http://sourceforge.net/projects/ifsvnadmin/files/svnadmin-1.6.2.zip/download
# unzip通常ubuntu下是没有,需要安装
unzip iF.SVNAdmin-stable-1.6.2 #最新版本是1.6.2
sudo mv -r iF.SVNAdmin-stable-1.6.2 /var/www/html/svnadmin
sudo chmod -R 777 /var/www/html/svnadmin
九、启动apache2
sudo service apache2 stop
sudo service apache2 start
十、启动svn
#这里使用config-file 是指定svn服务配置
svnserve -d -r /opt/svnrepositories --config-file /opt/svnrepositories/conf/svnserve.conf
十一、打开浏览器: http://xx.xx.xx.xx/ 输入的是服务器的ip地址
默认会打开if.svnadmin配置地址,按照上图的配置输入参数。然后点击页面下方的保存。会提示保存完成,由于ifsvnadmin没有数据库,因此所有的配置都是在配置文件中保存。
默认的登录密码是admin/admin ,可以自己修改。
到这一步,表示svn的web权限管理平台已经完成,你可以在平台上面创建仓库,用户,设置分组权限。
在搜索的所有资料中,到这一步都结束了,但是还有使用者怎么使用的方法均没有介绍。
下面说使用者如何使用。
使用者在本地安装svn客户端。
输入地址:http://服务器ip/svn/document/ ,可以进行检出document仓库。初始是空仓库。
注意,这里不能使用svn://服务器ip/svn/document/. 使用svn开头检出没问题,但是你提交的时候会报authorization failed!需要注意。这里我在部署完成研究很久才发现,并且需要添加父级目录,即svn,这个目录是apache2 在配置转发的时候映射的目录,不能省略!
好了,开始你完美的SVN管控之旅吧!
相关推荐
- DIY桌面激光雕刻机#是时候展现真正的技术了
-
激光雕刻机。这期视频我们来看一下我是如何DIY一台桌面激光雕刻机。前几天在水池子边上发现了一台旧电脑,我看这电脑上还有一些东西可以利用到,比如光驱上面拆出了步进电机和滑轨。所以本期视频我将用这些废品去...
- 100000块多米诺骨牌拼成超级马里奥,这款机器人1天就完成了
-
智东西(公众号:zhidxcom)编译|王健恩编辑|高歌智东西7月30日消息,美国工程师兼YouTube博主MarkRober创造出了一个可以自动摆放多米诺骨牌的机器人。这个机器人被命名为D...
- 这个3D打印机器人可以在30秒内打开密码锁
-
密码锁看似很安全?也许曾经是,但现在你可要当心了!这是因为一台3D打印制造的机器人就可以在半分钟内打开你的密码锁。上周四,知名黑客萨米·卡姆卡尔(SamyKamkar)在自己的网站上公布了一个称之为...
- 密码锁也不安全 这款机器人30秒即可自动打开
-
大学生和体育爱好者们要注意了,千万不要再把贵重物品存放在公共储物柜里。因为现在已经出现了一种3D打印的机器人,据说世界上各大锁商推出的大部分密码锁,它都能够在30秒之内打开。著名黑客山米·卡姆卡(Sa...
- 硬件单片机模拟器,再也不用买开发板了...
-
#头条创作挑战赛#记得2006年在凌阳科技(sunplus)工作的时候,凌阳科技开发了自己的编译器/集成开发环境(unspIDE),那个IDE除了有keil那样的编辑器、编译器、链接器、调试器、下载...
- 3D打印机分哪几部分构成?(3d打印机结构组成及系统分析)
-
3D打印机的构成根据技术类型(如FDM、SLA、SLS等)有所不同,但以最常见的FDM(熔融沉积成型)3D打印机为例,其核心组成部分可分为以下模块:1.机械结构框架提供整体支撑和稳定性,常见材质为金...
- 初学者学伺服都需要什么?石家庄诺仕通
-
#初学者学伺服都需要什么?#对于初学者学习伺服系统,需要从...
- arduino(arduino是单片机吗)
-
arduino学习笔记arduino学习笔记1-什么是arduino?...
- 自制写字机,你需要的全套资料都在这里
-
小编之前发过《用废旧光驱制作迷你绘图仪》,很多读者都成功制作了自己的绘图仪。但是该方法的缺点是gcode要在inkscape软件中生成,然后通过grbl-controller这个没有界面的程序发送画图...
- 自己动手DIY3D打印机 瞬间效果出现桌面时,大家都惊呆了!
-
3D打印机,对数码产品比较了解的朋友都知道,但是真正玩过的童鞋可能就不多了。其实3D打印机离我们并不远,随着3D打印技术越来越成熟,3D打印机的学习资料也越来越多,这让自己动手做一台桌面3D打印机也成...
- 机器人仅用24小时将十万块多米诺骨牌拼出马里奥,创下世界纪录
-
十万块多米诺骨牌倒下是个啥场面?等等,十万块?那得搭多久啊?...
- 如何制作一个机器人?(制作机器人的方法)
-
1.简单机械机器人(例如自动小车)2.智能机器人(带有人工智能或计算机视觉)3.工业机器人(用于生产自动化)4.人形机器人(类人结构,可以行走、对话)...
- CrowPi2树莓派4学习套件评测第1部分–开箱和首次启动
-
文章来源:CNXSoftware中文站2020年6月,我曾写过一篇关于深圳易科诺...
- 基于 Arduino UNO 的蓝牙汽车(arduino智能小车蓝牙控制app)
-
HC-05蓝牙模块HC-05是一款易于使用的蓝牙SPP模块,针对流畅的串行无线通信配置进行了优化。串口蓝牙模块是完全合格的蓝牙V2.0+EDR(增强数据速率)3Mbps调制,具有总2.4...
- 电机驱动设计方案带你初识机电一体化
-
在直流电机驱动电路的设计中,主要考虑以下几点:功能:电机是单向还是双向转动?需不需要调速?...