- 时间:2022-08-16 16:44 编辑: 来源: 阅读:272
- 扫一扫,手机访问
摘要:Centos下的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 # two//后跟绝对路径。2.建立在2基础上的步骤。Linux: install: yum -y安装subversion。svn版本库的根目录和密码权限目录:mkdir-p/application/Start svdatamkdir-p/application/svnpasswd并指定SVN的根目录SVN server-d-r/application/SVN data(-d:后端运行,-r: path)看进程是否可以启动:PS-ef | grepsvnnetstat-plnt | grep 3690(SVN的端口号是3690) lsof -i tcp:3690(或者lsof- 会创建很多属于svn本身的文件)tree /application/svndata/(这个时候你会发现sadoc里面多了很多内容)。 修改配置文件:CD/application/SVN data/sadoc/conf CP SVN server . conf SVN server . conf . bak egrep " \-access | \ -db=" svnserve.conf (egrep可以同时过滤两个字符串=grep -E)更改为:(用大写字母书写以下内容)[general] anon-access=none匿名访问auth-access=write允许的密码-db =/application/Svnpasswd/passwd指定文件authz-db =/application/Svnpasswd/authz指定文件领域=这是项目1说明:anon-access = none #不允许匿名访问auth-access = write #已验证的使用户能够 权限文件realm =我的第一个存储库#仓库名称修改密码和权限配置文件:CP/a application/SVN data/sadoc/conf/passwd/a application/SVN data/sadoc/conf/AUTHZ/a application/SVPASSWD/CD/a application/svnPASSWD/CHMOD 700 *(原权限为644,因为任何人都可以看到,因为SVN的密码是明文)vim passwd(加在最后一行)oldboy = 1111111 test = 11111 注意 这里的组成员必须在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 SVN serve PS-EF | grepsvnsvnserve-d-r/a application/svndata(这里开始到目录SVN data,所以在用户询问的URL末尾加了/sadoc,即:SVN://192.168.115.80.../application/svndata/sadoc,此时客户端访问的URL:svn URL:SVN://192 . 168 . 115 . 80)将SVN添加到启动中,编辑rc.local文件:vi/etc/rc.d/rc.local .添加以下启动命令:/usr/local/SVN/bin/SVN server-d–listen-port 999Svn客户端安装配置:安装:下载Tortoise svn安装在Windows上,安装中文语言包。都是一路到下一步处理连接:在驱动器D新建一个文件夹:svn客户端-右键:选择:svn-checkout (check out,第一次操作,仅此一个)填写新配置的服务器地址:svn://10.0.0.6/sadoc/ checkout。地址w为:d:svn客户端(推荐域名,不使用ip)使用默认:全递归(full recursive)输入让用户知道和密码:(可以出现这一步:可以确认你可以连接到服务器):oldboy 111111(此时会有一个额外的文件夹,里面有隐藏文件的。svn在里面)svn提交流程:在这个文件夹新建一个文档(的同级目录。svn文件夹)(作为新代码提交),它会转到上级目录(svncheckout生成的目录):右键:,提交看看能不能在服务器上提交:右键(svncheckout生成的目录)-> TortoisesVN-> Repo-Browser Linux客户端提取数据并提交数据导出:SVN Chechkout SVN://10 . 0 . 0 . 6/Sadoc/data/Test-enter导入用户名和密码:svninport/data/old boy/SVN://10 . 0 . 0 . 0在1。窗口,可以直接查看图形界面。2.二分钟后。Linux:SVN ls SVN://10 . 0 . 0 . 6/sadoc(ls-> list)(只能查看一级目录)。钩子:当版本升级时,可以触发钩子程序,例如发送邮件。或者操作的其余部分,是可以被触发的事件和程序。1.post-commitpost-commit:提交完成,版本创建成功后,执行钩子程序,提交已经完成,不可更改。所以这个脚本的返回值被忽悠了。例如:CP提交后。TMPL提交后vim提交后。注释掉最后一行并添加:touch/tmp/$ (date+%m% s)。日志chmod 755提交后2。提交时预提交会做一些限制,只有符合这个脚本内容的才能提交。 在生成环境中应该使用不符合的钩子:(1)限制上传文件的文件扩展名和大小;(2)SVN升级时自动通知,MSN或邮件或短信;(3)SVN升级时触发rsync推送,同时升级版本。..................................................................................................................................................在Linux上部署4个项目的svn操作步骤:[root @ localhost ~]# yum-y install subversion[root @ localhost ~]# SVN server-version SVN server,版本1.6.11 (r934486)......[root @ localhost ~]# mkdir-p/a/SVN/[root @ localhost ~]# mkdir/a/passwd[root @ localhost ~]# SVN server-d-r/a/SVN[root @ localhost ~]# SVN admin create/a/SVN/repo 1[root @ localhost ~]# SVN admin create/a/SVN/repo 2[root @ localhost ~]# SVN admin create/a/repo 3[root @ localhost ~]# SVN admin vim/a/passwd/passwd[users]Chen = Chen 123 lu = Lu 123 Zhang = Zhang 123 Wang = Wang 123 Hua = Hua 123 dong = dong 123[root @ localhost ~]# vim/a/passwd/authz[groups]Java = Chen,Lu,Zhang IOs = Wang web = huaji Shu = dong[repo 1:/]@ Java = rw[repo 2:/]@ IOs = rw[repo 3:/]@ web = rw[repo 4:/]] 00:00:00 SVN serve-d-r/a/SVN/root 2413 2106 0 19:00 pts/1 00:00:00:00 grep SVN[root @ localhost ~]#