美文网首页
linux安装SVN以及同步更新到项目上

linux安装SVN以及同步更新到项目上

作者: heywork | 来源:发表于2017-06-08 14:33 被阅读0次

    1、安装svn服务端:yum install subversion

    2、进入目录,准备创建svn目录:cd /usr/local/

    3、创建一个svn目录:mkdir svnRepo

    4、修改目录权限为777: chmod -R 777 svnRepo

    5、创建一个svn版本仓库test(test可以随便起名字):svnadmin create/usr/local/svnRepo/test

    6、进入first版本仓库下的配置文件目录:cd svnRepo/test/conf

    7、修改svnserve.conf:

    anon-access = none   //默认是只读read

    auth-access =write    //认证后有写入权限

    password-db =passwd   //帐号密码配置文件

    authz-db = authz   //权限配置文件

    realm = test   //改成自己的版本库生效范围

    8、修改authz:

    [group]

    first= ddl,shl   //创建一个first的组,并制定两个用户ddl和shl

    [/]

    //制定根目录下的权限

    @first = rw//first组用户权限为读写* = r     //其他用户只有读权限

    9、修改passwd:

    [users]

    ddl=123456     //用户名 = 密码

    shl =123456    

    10、设置自启动:vim /etc/rc.local

    添加:svnserve -d -r /usr/local/svnRepo/test

    查找是否有svn的进程:ps aux |grep 'svn'

    杀死2505这个查找到的svn进程:kill -9 进程号

    启动svn: svnserve-d -r /usr/local/svnRepo/test  (可以把这个放到/etc/local/rc.local文件中,实现开机自启动)

    查看svn信息:netstat -anp|grep svnserve

    现在用客户端checkout应该就可以了

    11、进入svn仓库hooks文件下:cp post-commit.tmpl post-commit

    然后打开文件清空内容,修改为以下代码:

    #!/bin/sh

    export LANG=zh_CN.UTF-8

    /usr/bin/svn update --username **** --password **** /var/www/test

    其中第一行意思是:用sh来解析这个脚本,因为各种shell的语法有细微的差别

    第二行是编码格式:这里我使用的是UTF-8

    最后一行/usr/bin/svn是svn的路径,不是项目路径,应该都是一样的,后半句分别是用户名、密码、和项目路径。--username这个比较坑了,网上搜出来的很多都搞错了,前面其实是两个减号,英文输入法下的。

    12、修改post-commit的可执行权限:chmod 755 post-commit

    13、在服务器进入项目目录/var/www/testcheckout 整个项目。

    注意此处不要checkout文件夹,正确代码应该是这样:

    svn checkout svn://{服务器地址}:{端口号}/test .//注意目录后面还有一个点

    注意:此处的/test 可不需要添加:( 添加的目的是为了实现多个项目。)

    svn checkout svn://{服务器地址}:3690 .//注意目录后面还有一个点

    至此,如果按照此步骤搞下来,应该已经没有问题了,你可以本地commit代码,自动同步到项目了。

    相关文章

      网友评论

          本文标题:linux安装SVN以及同步更新到项目上

          本文链接:https://www.haomeiwen.com/subject/kdzzfxtx.html