• 技术文章 >运维 >linux运维

    Linux服务器搭建svn环境方法详解

    藏色散人藏色散人2020-01-29 13:53:06转载944
    下面由Linux教程栏目给大家介绍Linux服务器搭建svn环境的方法,希望对需要的朋友也是帮助!

    1、安装svn服务端

    sudo apt-get install subversion

    2、安装svn在ubuntu的本地客户端

    sudo apt-get install libapache2-svn

    3、在根目录home下面建一个文件夹svn,作为svn的根目录

    sudo mkdir /home/svn

    4、建一个ubuntu的用户组,和一个管理员

    sudo adduser svnuser(这里随便取个用户名)
    sudo addgroup svngroup(这里是用户组)
    sudo addgroup svnuser svngroup(把用户添加到用户组)

    5、接着在svn的根目录下面创建一个svn的资源库,随便取名,例如pro

    sudo mkdir /home/svn/pro

    6、把上面创建的用户组的权限给到资源库pro

    sudo chown -R root:svngroup /home/svn/pro
    sudo chmod -R g+rws /home/svn/pro

    7、向资源库里导入资源

    sudo svnadmin create /home/svn/pro

    8、进入资源库/home/svn/pro,可以看到有几个文件夹,打开conf文件夹

    svnserve.conf是svn的配置文件
    passwd是svn的用户文件
    authz是svn的权限文件

    9、先打开svnserve.conf,将这些内容前面的#去掉,并查看后面的内容符合与否

    sudo gedit /home/svn/pro/conf/svnserve.conf
    -----------------
    [general]
    anon-access = read(这个是匿名访问权限,只读)
    auth-access = write(这个是有权限操作,可写)
    password-db = passwd(这个是用户文件的名称,对应8的passwd)
    auth-db = authz(这个是用户权限文件的名称,对应8的authz)
    realm = my project(这个是访问的时候显示的别名,随便取名也可)

    10、打开passwd文件添加一个svn用户,在[users]下面添加admin=123456

    sudo gedit /home/svn/pro/conf/passwd
    admin是用户名
    123456是密码

    11、打开authz文件,给刚才的用户添加访问权限

    sudo gedit /home/svn/pro/conf/authz
    [groups]
    root = admin(定义一个权限组root,把admin用户加入权限组root)
    [/]
    @root=rw(给root里的所有用户,读写的权限)
    * = r(给所有其他的匿名用户,只读的权限)

    12、重启svn

    sudo killall svnserve
    sudo svnserve -d -r /home/svn

    13、查看下本机ubuntu的ip地址

    sudo ifconfig

    可以看到192.168.***.***

    14、然后在我们的window主机里可以局域网访问虚拟机的svn了,相信大家都有TortoiseSVN这个工具吧,在地址栏写上svn://192.168.***.***/pro即可,用户为上面建立的admin=123456,上传几个测试文件,比如index.php,写点php代码上传上去;

    15、这个时候php是无法解析到我们的svn里的资源index.php的,所以要把svn资源库里的文

    件给同步到ubuntu的apache+php访问目录里去,在/var/www/html下面建一个文件夹

    sudo mkdir /var/www/html/bbs
    sudo chmod -R 777 /var/www/html/bbs
    sudo svn co svn://192.168.***.***/pro /var/www/html/bbs

    16、然后我们可以在window主机上访问http://192.168.***.***/bbs看到index.php的内容了,接着我们要让apache自动同步svn的资源库变化后的内容,才能达到我们的效果;

    /home/svn/pro/hooks目录下有很多以tmpl结尾的文件,找到post-commit.tmpl,使用命令

    cd /home/svn/pro/hooks
    sudo cp post-commit.tmpl post-commit
    sudo chmod +x post-commit
    sudo gedit post-commit

    打开文件后,看到最后几行没有加#的,给它们全部加上#,因为这个是发邮件的例子,我们用不到,全部注销掉,然后在最后一行加上这段代码

    svn up /var/www/html/bbs --username=admin --password=123456

    这样只要我们在window上传文件到svn的资源库,apache就会自动把这些文件同步到我们的bbs文件夹下,然后就可以在地址栏访问到我们的项目了,搞定。另外,极个别,如果中文显示有问题的话,那么可以在svn up这个代码前面加上export.UTF8,再试试。

    以上就是Linux服务器搭建svn环境方法详解的详细内容,更多请关注php中文网其它相关文章!

    声明:本文转载于:cnblogs,如有侵犯,请联系admin@php.cn删除
    专题推荐:Linux svn
    上一篇:详解shell实现SSH自动登陆 下一篇:linux下清空history中记录的历史命令
    千万级数据并发解决方案

    相关文章推荐

    • linux本地内核提权漏洞介绍• linux下更改mysql数据文件默认路径• Linux压缩命令(总结)• mysql实现linux下数据库目录迁移
    1/1

    PHP中文网