美文网首页SVNLinux程序猿阵线联盟-汇总各类技术干货
基于腾讯Centos7云服务器搭建SVN版本控制库

基于腾讯Centos7云服务器搭建SVN版本控制库

作者: Kwongtai | 来源:发表于2017-05-17 19:46 被阅读131次

    基于腾讯Centos7云服务器搭建SVN版本控制库

    最近在和小伙伴组队参加一个关于人工智能的比赛,无奈不知道怎么处理好每个人的代码托管问题,于是找到了网上免费svn托管服务器的服务,但是所给的免费空间实在太小了。本来我们在学校的实验室搭建了一个本地的服务器,但是只能是内网登陆,考虑到一个小伙伴会在78月左右就出国留学,不是内网无法登陆,而且那台主机将用来搭建集群。此时想到了我之前申请的腾讯云服务器,遂在腾讯云上基于centos7搭建了SVN。具体过程如下,如有不对,请大家指正!另外本人在CSDN:http://blog.csdn.net/weixin_36394852 以及cnblog:http://www.cnblogs.com/kwongtai 都有博客,同步发布~

    1. 第一步安装svn服务器端软件,使用的命令有

    yum install subversion

    安装完之后,可以输入:

    svnserve -version

    查看目前svn版本,查询到即为进入第二步


    2. 创建svn版本库的目录

    mkdir -p var/svn/fuck

    -p参数:加了系统将自动建立好那些尚不存在的目录,即一次可以建立多个目录


    3. 创建版本库

    svnadmin create /var/svn/fuck

    执行命令后,svn会在/var/svn/fuck生成如下文件:

    001.png

    其中conf文件夹下有重要的文件为以下几个:

    svnserve.conf           //svn服务配置文件
    authz                   //权限控制配置文件
    passwd                  //用户名口令文件
    

    4. 配置svnserve.conf文件

    在[general]里面把以下配置前的#号删去并根据需要作出以下修改:
    vi /var/svn/fuck/conf/senserve.conf

    [general]
    //匿名访问的权限,可以是read、write、none,默认为read,在此因为我要建立我团队的私人版本库,故我设置为none
    anon-access=none
    //使授权用户有写权限,参数也是如上3个
    auth-access=write
    //使用哪个文件作为账号文件,在此指定在conf文件里面的另外一个文件passwd
    password-db=passwd
    //使用哪个文件作为权限文件,在此指定在conf文件里面的另外一个文件authz
    authz-db=authz
    //认证命名空间,说白了就是版本库的所在目录
    realm=/var/svn/fuck
    

    具体操作如下:

    002.png 003.png

    修改完之后按Esc键后,按Shift 连续按Z键进行保存(对liunx新手来说提醒一下)。


    5. 修改权限控制配置文件antuz:

    vi /var/svn/fuck/conf/authz
    在[groups]中添加:

    [groups]            
    //用户组
    Fuck = kwongtai,dada //用户组所对应的用户
    //因为只有一个版本库,故使用[/]
    [/]                 //库目录权限
    @admin = rw         //用户组权限
    * =                 //非用户组权限,这里设置除了用户组都对版本库没有任何权限
    
    004.png

    6. 修改用户名口令文件配置passwd

    vi /var/svn/fuck/conf/passwd

    005.png

    7. 启动svn版本库

    svnserve -d -r /var/svn/fuck
    使用ps aux | grep svn查看是否已经启动了svn

    006.png

    见到如红色圈记那样,就代表已经启动成功.


    8. 停止svn

    输入指令killall svncerve再输入ps aux | grep svn

    007.png

    杀死进程,可以发现svnserve所有的进程已经被杀死了


    9. Win10下客户端访问,需要安装TortoiseSVN

    下载地址如下:https://tortoisesvn.net/downloads.zh.html


    10. 建立仓库

    找到要建立仓库的文件夹下,右键点击check out

    008.png

    11. 放上你的svn地址:

    这里由于我只设置了一个库,直接可以输入我的外网IP就可以了

    009.png

    12. 确认后提示输入用户密码:

    这里的账号密码为/var/svn/fuck/conf/passwd里面设置的那些

    010.png

    13. 登陆之后

    就能看到那个文件夹了:

    011.png

    在这个文件夹下。新建fuck.txt文件,随便编辑文件之后,可以看见文件夹的标志变了

    012.png

    在该文件夹,右键点击svn commit,弹出commit对话框,可以在在此输入每个版本的日志

    013.png

    在此文件夹下,右键点击TortoiseSVN选择show log可以显示文件的日志记录

    014.png

    14. 配置在Linux上配置开机自动启动svn

    最后配置在Linux上配置开机自动启动svn,免去了重启Linux后要自己启动的svn的麻烦
    输入:

    vi /etc/rc.d/rc.local

    添加内容:

    svnserve -d -r /var/svn/fuck

    因为centos7之后,原来直接修改/etc/rc.d/rc.local启动脚本自动生效的功能因为修改了需要重新赋予可执行权限

    再输入 chmod +x /etc/rc.d/rc.local


    结言

    自己搭建的SVN稳定而且做到了真正的私密,这对开发来说着实是太好了。第一次写博文,写得不好请大家指正!

    相关文章

      网友评论

      • 943cf312d409:第一次的话 写的很好 很详细 即便是新手只要了解也能看懂 谢谢
      • 夏无忧阳:有用,谢谢分享

      本文标题:基于腾讯Centos7云服务器搭建SVN版本控制库

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