Linux下如何部署SVN服务器
发表于:2024-11-11 作者:千家信息网编辑
千家信息网最后更新 2024年11月11日,这篇文章主要介绍"Linux下如何部署SVN服务器"的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇"Linux下如何部署SVN服务器"文章能帮助大家解决问题。SV
千家信息网最后更新 2024年11月11日Linux下如何部署SVN服务器
这篇文章主要介绍"Linux下如何部署SVN服务器"的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇"Linux下如何部署SVN服务器"文章能帮助大家解决问题。
SVN是一个开放源代码的版本控制系统,通过采用分支管理系统的高效管理,简而言之就是用于多个人共同开发同一个项目,实现共享资源,实现最终集中式的管理。
前提:通过yum来安装,必须是centos6.5的桌面版的。否则会出现某些的安装包不全而导致装好的svn不能用,等等未知的错误。
服务端安装配置:
1.svn服务端的运行方式: 1,独立服务器:svn://www.snv.com/sadoc # sadoc 项目 2,借助Apache:http://www.svn.com/addoc 3,本地直接访问:file:///application/svn/sadoc #两个// 后面的就是绝对路径2.Linux上搭建步骤:安装: yum -y install subversion创建svn的版本库的根目录和密码权限目录:mkdir -p /application/svndatamkdir -p /application/svnpasswd启动,指定svn的根目录svnserve -d -r /application/svndata (-d: 后台运行,-r:路径)查看进程是否启动:ps -ef |grep svnnetstat -plnt |grep 3690 (svn的端口号是3690)lsof -i tcp:3690 (或者:lsof -i :3690)建立版本库:svnadmin create /application/svndata/sadoc (也可以理解为是一个项目,这个目录不能用mkdir来创建,因为svn有自己运行方式,会创立属于svn自己很多的文件)tree /application/svndata/ (这时会发现sadoc里面会多了很多的内容)修改配置文件:cd /application/svndata/sadoc/confcp svnserve.conf svnserve.conf.bak egrep "\-access|\-db=" svnserve.conf (egrep可以同时过滤两个字符串=grep -E)改成:(都要顶格写以下内容) [general] anon-access=none 不允许匿名访问 auth-access=write 允许的可以写 password-db = /application/svnpasswd/passwd 指定用户-密码的文件 authz-db = /application/svnpasswd/authz 指定用户权限的文件 realm= this is project 1说明:anon-access = none #不允许匿名用户访问auth-access = write #通过验证的用户可以读和写password-db = /opt/svn/etc/svn-user.conf #用户保存文件authz-db = /opt/svn/etc/svn-authz.conf #权限管理文件realm = My First Repository #仓库名称修改密码和权限配置文件: cp /apllication/svndata/sadoc/conf/passwd /apllication/svndata/sadoc/conf/authz /apllication/svnpasswd/ cd /apllication/svnpasswd/ chmod 700 * (原来的权限为644,因为任何人都可以看到,因为svn的密码是明文的) vim passwd (末行添加) oldboy = 111111 test = 111111 test = 222222 vim authz (这里可以定义组信息。注意。这里的组里的成员必须是在passwd里定义的,不是随便写的,组名可以随便起) ett_sa = oldboy,test1 (定义一个运维组:成员为:oldboy和test1) ett_wangguan = test (定义一个网管组,成员为test) [sadoc:/] (定义项目额权限: 项目名称sadoc,表示该项目下所有内容允许谁可以有什么权限) @ett_sa = rw (如果是允许某个组ett_sa来访问,则前面要加@这个符号来标识下) @ett_wangguan = r ( 允许网管组来查看 ) test = r (如果是给某个用户的权限,就是直接用 " 户名 = 权限 "的格式)重启svn: pkill svnserve ps -ef |grep svn svnserve -d -r /apllication/svndata (这里启动到svndata这个目录,所以在客户方问的URL中末尾续接上/sadoc ,即为:svn://192.168.115.80/sadoc) ps -ef |grep svn (加入只有1个项目时,就可以 svnserve .../application/svndata/sadoc ,这时在客户端访问的URL: svn://192.168.115.80 )将svn加入到开机启动编辑rc.local文件:vi /etc/rc.d/rc.local加入如下启动命令:/usr/local/svn/bin/svnserve -d –listen-port 9999 -r /opt/svn
客户端安装配置:
安装:下载乌龟svn在Windows上安装,安装汉化版的语言包,都是一路下一步解决连接:在d盘里新建一个文件夹:svn客户端---右击:选择:svn-checkout(检出,第一次操作,只有这个) 填上刚配的服务器的地址:svn://10.0.0.6/sadoc/ checkout的地址W为:d:svn客户端 (推荐用域名,不用ip)采用默认:full recursive (完全递归) 输入用户明和密码:(能出现这一步:证明能连到服务器) :oldboy,1111111 (这时就会多出个文件夹,并且里面有.svn的隐藏文件)svn提交流程:在这文件夹里新建一个文档(.svn文件夹的同级目录)(当成新代码提交) ,会到上级目录(svncheckout生成的目录):右键: ,commit(提交)查看服务器上是否提交上去:右键(svncheckout生成的目录)--> TortoiseSVN ---> Repo-browserlinux客户端上 提取数据和提交数据导出: svn chechkout svn://10.0.0.6/sadoc /data/test -------------------------输入用户名和密码导入:svn import /data/oldboy/ svn://10.0.0.6/sadoc -m "dddddddddddddd" --------------------------输入用户名和密码或者简写为:svn co svn://10.0.0.6/sadoc /data/test svn cm /data/oldboy svn://10.0.0.6/sadoccheckout一般只是第一次使用时用,以后要更新至最新版本用update就可以了查看svn中的数据:1.Windows中图形界面可以直接查看2.Linux中:svn ls svn://10.0.0.6/sadoc (ls ---> list)(只能查看一级目录)钩子:hooks 当版本更新时,钩子程序可以被触发,比如发个邮件,等或者其他操作,是一个可以被触发的事件和程序1.post-commitpost-commit:在提交完成,成功创建版本之后,执行该钩子程序,提交已经完成,不可更改,因此本脚本的返回值被忽悠例:cp post-commit.tmpl post-commit vim post-commit 将末行注释掉,添加: touch /tmp/$(date +%M%S).log chmod 755 post-commit2.pre-commit 会在你提交时做一些限制,符合该脚本内容的才可以被提交上来。不符合的会报错钩子在生成环境中的应用:(1)限制上传的文件扩展名和大小(2)svn更新时自动告知,MSN或者邮件或短信等(3)svn更新时触发rsync推送,进行显示版本的同时更新
Linux上部署4个项目的svn操作步骤:
[root@localhost ~]# yum -y install subversion[root@localhost ~]# svnserve --versionsvnserve, version 1.6.11 (r934486) ......[root@localhost ~]# mkdir -p /a/svn/[root@localhost ~]# mkdir /a/passwd[root@localhost ~]# svnserve -d -r /a/svn[root@localhost ~]# svnadmin create /a/svn/repo1[root@localhost ~]# svnadmin create /a/svn/repo2[root@localhost ~]# svnadmin create /a/svn/repo3[root@localhost ~]# svnadmin create /a/svn/repo4[root@localhost ~]# cp /a/svn/repo1/conf/passwd /a/passwd/[root@localhost ~]# cp /a/svn/repo1/conf/authz /a/passwd/[root@localhost ~]# vim /a/svn/repo1/conf/svnserve.conf[general]anon-access=noneauth-access=writepassword-db = /a/passwd/passwdauthz-db = /a/passwd/authzrealm=1111111111111111111111111111111111111[root@localhost ~]# mv /a/svn/repo2/conf/svnserve.conf /a/svn/repo2/conf/svnserve.conf.bak[root@localhost ~]# mv /a/svn/repo3/conf/svnserve.conf /a/svn/repo3/conf/svnserve.conf.bak[root@localhost ~]# mv /a/svn/repo4/conf/svnserve.conf /a/svn/repo4/conf/svnserve.conf.bak[root@localhost ~]# cp /a/svn/repo1/conf/svnserve.conf /a/svn/repo2/conf/svnserve.conf[root@localhost ~]# cp /a/svn/repo1/conf/svnserve.conf /a/svn/repo3/conf/svnserve.conf[root@localhost ~]# cp /a/svn/repo1/conf/svnserve.conf /a/svn/repo4/conf/svnserve.conf[root@localhost ~]# vim /a/passwd/passwd[users]chen=chen123lu=lu123zhang=zhang123wang=wang123hua=hua123dong=dong123[root@localhost ~]# vim /a/passwd/authz[groups]java=chen,lu,zhangios=wangweb=huajishu=dong[repo1:/]@java=rw[repo2:/]@ios=rw[repo3:/]@web=rw[repo4:/]@jishu=rw[root@localhost conf]# chmod 700 /a/passwd/*[root@localhost ~]# pkill svnserve[root@localhost ~]# ps -ef |grep svnroot 2405 2106 0 18:59 pts/1 00:00:00 grep svn[root@localhost ~]# svnserve -d -r /a/svn/[root@localhost ~]# ps -ef |grep svnroot 2411 1 0 19:00 ? 00:00:00 svnserve -d -r /a/svn/root 2413 2106 0 19:00 pts/1 00:00:00 grep svn[root@localhost ~]#
关于"Linux下如何部署SVN服务器"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注行业资讯频道,小编每天都会为大家更新不同的知识点。
文件
服务
权限
用户
目录
服务器
密码
版本
项目
客户
更新
内容
客户端
文件夹
钩子
管理
配置
就是
成员
数据
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
服务器包含无效的ssl证书
广州软件开发工程师工资待薪
啥是佩奇 软件开发
智联软件开发有限公司
软件开发总体设计原则
rehl 软件开发工作站
sql实时数据库公司
战地1服务器在哪里
如何有效保护数据库安全
监听数据库表数据发生改变
网络安全概论书籍
学计算机网络技术考什么证好
郑州数据备份服务器
珠海发货单软件开发
河北电子软件开发多少钱
中国野象数据库地址
mod怎么导入服务器
软件开发项目不能转包
数据库流水翻一倍写入
数据库事务结束方式
报数app软件开发
深圳pc软件开发方案
自动化登陆设施原理网络安全
大有网络安全
软件开发真实情景
tft换服务器还能存档么
监听数据库表数据发生改变
暗黑三服务器维护信息
白银公安网络安全
汇丰软件开发(广东)有限公司