前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >SVN服务的部署及使用

SVN服务的部署及使用

作者头像
仙人技术
发布2020-04-29 09:29:30
2.4K0
发布2020-04-29 09:29:30
举报

SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。svn服务器有2种运行方式:独立服务器和借助apache运行。两种方式各有利弊,用户可以自行选择。

svnserve是SVN自带的一个轻型服务器,客户端通过使用以svn://或svn+ssh://为前缀的URL来访问svnserve服务器,实现远程访问SVN版本库。svnserve可以通过配置文件来设置用户和口令,以及按路径控制版本库访问权限。本文详细分析了svnserve配置文件格式,并说明如何使用配置文件控制版本库访问权限 svn的版本管理其最大的特点就是集中式,所有的项目代码文件都放在svn服务器上,客户端并不具有全部项目代码文件,因此对svn服务器的设备要求较高

1、服务端安装配置

建立版本库(也可以理解为是一个项目,这个目录不能用mkdir来创建,因为svn有自己运行方式,会创立属于svn自己很多的文件)

修改配置文件

用户名口令文件由svnserve.conf的配置项password-db指定,缺省为conf目录中的passwd。该文件仅由一个[users]配置段组成。 [users]配置段的配置行格式如下: <用户名> = <口令> 注意:配置行中的口令为未经过任何处理的明文

权限配置文件由svnserve.conf的配置项authz-db指定,缺省为conf目录中的authz。该配置文件由一个[groups]配置段和若干个版本库路径权限段组成。 [groups]配置段中配置行格式如下: <用户组> = <用户列表> 用户列表由若干个用户组或用户名构成,用户组或用户名之间用逗号","分隔,引用用户组时要使用前缀"@"(如:引用用户组"all"要使用字符串"@all")。 版本库路径权限段的段名格式如下: [<版本库名>:<路径>] 如版本库abc路径/tmp的版本库路径权限段的段名为"[abc:/tmp]"。 可省略段名中的版本库名。若省略版本库名,则该版本库路径权限段对所有版本库中相同路径的访问控制都有效。如:段名为"[/tmp]"的版本库路径权限段设置了所有引用该权限配置文件的版本库中目录"/tmp"的访问权限。 版本库路径权限段中配置行格式有如下三种: <用户名> = <权限> <用户组> = <权限> * = <权限> 其中,"*"表示任何用户;权限的取值范围为''、'r'和'rw',''表示对该版本库路径无任何权限,'r'表示具有只读权限,'rw'表示有读写权限。 注意:每行配置只能配置单个用户或用户组。 配置文件保存后就立即生效,重启或者不重启svnserve服务都可以

启动到svndata这个目录,所以在客户端访问的URL中末尾续接上/sadoc,假如只有1个项目时,就可以 svnserve .../application/svndata/sadoc,直接输入地址svn://xxx.xxx.xxx.xxx即可访问

SVN配置详细信息参考

2、客户端配置和使用

2.1、Linux客户端使用svn

附:常用命令(参考自https://blog.csdn.net/liuchong_lch/article/details/78192755)

  • 1、将文件checkout到本地
  • 2、往版本库中添加新的文件
  • 3、将改动的文件提交到版本库
  • 4、加锁/解锁
  • 5、更新到某个版本
  • 6、查看文件或者目录状态
  • 7、删除文件
  • 8、查看日志
  • 9、查看文件详细信息
  • 10、比较差异
  • 11、将两个版本的文件的差异合并到当前文件
  • 12、SVN帮助

以上为常用命令,下面为不常用命令

  • 13、查看版本库下的文件和列表
  • 14、创建纳入版本控制下的新目录

创建版本控制的目录。 1、每一个以工作副本 PATH 指定的目录,都会创建在本地端,并且加入新增调度,以待下一次的提交。 2、每个以URL指定的目录,都会透过立即提交于仓库中创建。在这两个情况下,所有的中间目录都必须事先存在。

  • 15、恢复本地修改

注意:本子命令不会存储网络,并且会解除冲突的情况。但它不会恢复被创建的目录

  • 16、代码库URL变更

1、更新工作副本,映射到一个新的URL,会将服务上的文件与本地文件合并。这是将工作副本对应到同一创库的某个分支或者标记的方法。 2、改写工作副本URL元数据,以反映URL的变更,创库URL变动但工作副本仍旧对映同一创库的同一目录时使用该命令更新工作副本与创库的对应关系。

  • 17、解决冲突

注意:本子命令不会依语法来解决冲突或是移除冲突标记;它只是移除冲突的相关文件,然后让path可以再次提交。

  • 18、输出指定文件的URL内容

2.2、windows客户端使用svn

下载TortoiseSVN客户端下载地址,这个地址也提供了语言包的下载,选择需要下载的语言包,在安装完TortoiseSVN后安装语言包即可,图形界面使用简单使用指南,这里不想多说,可以参考此文章

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018-07-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1、服务端安装配置
  • 2、客户端配置和使用
    • 2.1、Linux客户端使用svn
      • 2.2、windows客户端使用svn
      相关产品与服务
      访问管理
      访问管理(Cloud Access Management,CAM)可以帮助您安全、便捷地管理对腾讯云服务和资源的访问。您可以使用CAM创建子用户、用户组和角色,并通过策略控制其访问范围。CAM支持用户和角色SSO能力,您可以根据具体管理场景针对性设置企业内用户和腾讯云的互通能力。
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档