设为首页 收藏本站
查看: 734|回复: 0

[经验分享] Linux下SVN的安装

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2016-6-23 08:49:16 | 显示全部楼层 |阅读模式
1、SVN介绍
2、安装SVN服务
3、配置SVN服务

1、SVN介绍
    SVN,全称Subversion,是一款跨平台的开源的版本管理控制工具。管理着随时间改变的各种数据,这些数据存放在一个中央资料档案库(repository)中,并会备份和记录每个文件每一次的修改更新变动。故可以把任意一个时间点的档案恢复到想要的某一个旧的版本,也可以直接浏览指定文件的更新历史记录。SVN相关站点:
    Subversion官网:http://subversion.tigris.org/  http://subversion.apache.org/

    SVN客户端:http://tortoisesvn.net/

    SVN中文网站:http://www.iusesvn.com/

    中文常见问题解答FAQ:http://subversion.apache.org/faq.zh.html

    官方手册:http://svnbook.red-bean.com/    中英文都有


    SVN服务端运行方式(3种):
    1)独立服务器访问
           访问地址: svn://192.168.1.123/binDoc
    2)借助Apache等http的服务
            访问地址:http://192.168.1.123/binDoc    或 https://192.168.1.123/binDoc

            注:这个也有两种方式:单独安装apache和svn;安装VisualSVN软件或CSVN软件
    3)本地访问
            访问地址:file://192.168.1.123/binDoc


    SVN档案库数据格式
        SVN存储版本数据有2种方式:BDB(一种事务安全型表类型)和FSFS(一种不需要数据库的存储系统)。因为BDB方式在服务器中断时,有可能锁住数据,所以还是FSFS方式更安全一点。
        BDB:   
            伯克利DB(Berkeley DB),版本库可以使用的一种经过充分测试的后台数据库实现,不能在通过网络共享的文件系统上使用,伯克利DB是Subversion 1.2版本以前的缺省版本库格式。
        FSFS:
            一个专门用于Subversion版本库的文件系统后端,可以使用网络文件系统(例如NFS或SMBFS),是1.2版本及其后的缺省版本库格式。

2、安装SVN服务
    1)检查SVN软件程序是否已安装:  

1
2
  [iyunv@Binggo ~]# rpm -qa subversion
subversion-1.6.11-10.el6_5.x86_64        ###若无这提示信息,则说明未安装



     2)如未安装,则执行下面的命令进行安装      

1
[iyunv@Binggo ~]# yum -y install subversion



注:无特殊的功能要求,就可以用以上命令安装通用版本

3、配置SVN服务
        建立svn版本库数据存储根目录(svndata)及用户、密码和权限目录(svnpasswd)

1
[iyunv@Binggo ~]mkdir -p /application/{svndata,svnpasswd}



        启动SVN服务指定服务的SVN根目录      

1
[iyunv@Binggo ~]svnserve  -d  -r  /application/svndata/        ###-d以守护进程模式运行,-r指定svn的根目录



        查看SVN进程      

1
[iyunv@Binggo ~]ps -ef|grep 3690



        检测SVN端口      

1
[iyunv@Binggo ~]netstat -lnt|grep 3690        或     lsof  -i :3690



        创建项目版本库(不要创建版本库目录binDoc)      

1
[iyunv@Binggo ~]svnadmin  create  /application/svndata/binDoc




        调整svn配置文件及权限文件
    例如:配置允许用户binbin读写访问

1
[iyunv@Binggo ~]cd /application/svndata/binDoc/conf



1
[iyunv@Binggo ~]cp svnserve.conf svnserve.conf.ori



1
[iyunv@Binggo ~]cp passwd  /application/svnpasswd/passwd



1
[iyunv@Binggo ~]cp authz  /application/svnpasswd/authz



    修改配置文件svnserve.conf
        # anon-access = read
        # auth-access = write
        # password-db = passwd
        # authz-db = authz
    修改为:
        anon-access = none            ###是否允许匿名访问,none为禁止
        auth-access = write            ###访问权限
        password-db = /application/svnpasswd/passwd        ###统一设置管理svn用户和密码
        authz-db = /application/svnpasswd/authz                 ###统一设置管理svn权限

    修改配置文件/application/svnpasswd/passwd
        在[users]下新增一行
            binbin = binbin123        ###等号左边为用户名,右边为密码

    修改配置文件/application/svnpasswd/authz
        在最下面新增
            [binDoc:/]
            binbin = rw                ###等号左边为用户名,右边为权限
注:版本库目录用户权限格式:
       [<版本库名>:/项目/目录]
            @<用户组名> = <权限>
            <用户名> = <权限>


注意:
×    权限配置文件中出现的用户名必须已在用户配置文件中定义过的
×    对权限配置文件的修改立即生效,不必重启svn,但是主配置文件svnserve.conf修改则需要重启服务才能生效



说明:重启SVN可以先使用命令pkill svnserve 杀死svn进程在使用svnserve -d -r /application/svndata/重启SVN服务


附录:        

svnserve命令的使用参数
    [iyunv@Binggo ~]# svnserve --help
usage: svnserve [-d | -i | -t | -X] [options]

Valid options:
  -d [--daemon]            : daemon mode
  -i [--inetd]             : inetd mode
  -t [--tunnel]            : tunnel mode
  -X [--listen-once]       : listen-once mode (useful for debugging)
  -r [--root] ARG          : root of directory to serve
  -R [--read-only]         : force read only, overriding repository config file
  --config-file ARG        : read configuration from file ARG
  --listen-port ARG        : listen port
                             [mode: daemon, listen-once]
  --listen-host ARG        : listen hostname or IP address
                             [mode: daemon, listen-once]
  -T [--threads]           : use threads instead of fork [mode: daemon]
  --foreground             : run in foreground (useful for debugging)
                             [mode: daemon]
  --log-file ARG           : svnserve log file
  --pid-file ARG           : write server process ID to file ARG
                             [mode: daemon, listen-once]
  --tunnel-user ARG        : tunnel username (default is current uid's name)
                             [mode: tunnel]
  -h [--help]              : display this help
  --version                : show program version information

svnadmin命令的参数

[iyunv@Binggo ~]# svnadmin --help
general usage: svnadmin SUBCOMMAND REPOS_PATH  [ARGS & OPTIONS ...]
Type 'svnadmin help <subcommand>' for help on a specific subcommand.
Type 'svnadmin --version' to see the program version and FS modules.

Available subcommands:
   crashtest
   create
   deltify
   dump
   help (?, h)
   hotcopy
   list-dblogs
   list-unused-dblogs
   load
   lslocks
   lstxns
   pack
   recover
   rmlocks
   rmtxns
   setlog
   setrevprop
   setuuid
   upgrade
   verify


   


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-233915-1-1.html 上篇帖子: 使用cobbler自动化部署系统 下篇帖子: linux dd 读取 写入磁盘速度 Linux
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表