美文网首页php知识积累PHP经验分享
linux下svn服务器创建工程以及分配权限

linux下svn服务器创建工程以及分配权限

作者: hey_沙子 | 来源:发表于2018-12-24 16:59 被阅读10次

    首先,你需要有这些:
    一台已经安装好了的SVN服务器
    一台客户的电脑

    由于我是在现有的svn服务器上安装的,遂就略去了SVN安装的过程,现在我整理下大致的思路:

    =>svnadmin创建工程
    =>配置所创建工程下的authz passwd svnserve.conf
    =>杀进程,重启SVN服务
    =>测试新建立的工程(包括权限认证,文件提交和更新)

    1、先找到svn工程目录

    image.png

    2、进去工程目录/data/www/svn,svnadmin命令创建一个工程:

    image.png

    工程已经创建成功了,(在ps:即使不熟悉请不要用复制的方式去创建svn工程,切记!) 现在进入文件夹,可以看到一些默认的文件和文件夹:


    image.png

    conf:放置当前工程的配置文件,权限访问控制等等

    目录说明:

    db:记录用户提价的版本、缓存、db配置等,本身也是个sqlLite数据库
    format:一个文件,默认为空,用途暂不
    hooks:放置自动提交和更细脚本,及相关配置
    locks:顾名思义就是锁,代码被锁住了,可以在这里进行解锁操作  
    README.txt:工程的介绍文档,建议新建工程后都更新下

    3、因为我的目的是在拉取代码时就做一次权限认证,防止恶意用户窥测,遂,现在我们进入conf里面配置相关权限,conf目录目前有这些文件:


    image.png

    命令: vi passwd ,现在可以看到svn给了我们1个例子 liey这个用户,现在我们需要添加我们的用户,大致格式是 :用户名 = 密码,#是注释,请不要以#开始命名用户

    image.png

    如图,用户组的配置需要在[group]标签下配置,你可以自定义一个用户组,比如这里的admin,用户组的用户均以逗号隔开,且用户必须在刚才的passwd文件中配置过的用户(不可使用中文作为用户名),用户组的命名方式为: 用户组名 = 用户1,用户2,用户3 ,用户组定义完成,现在需要对每一个用户组赋予不同的读写权限,大致格式是这样: @用户组名 = 读写权限 ,这个读写权限常用的有两个:rw->读写,r->只读。

    用户组配置完成,现在需要配置svn服务引用,命令: vi svnserve.conf


    image.png

    额,主要操作就是把除了上面两个的其它配置参数全部用#注掉,对于保留的这两个参数,我解释下:

    anon-access = none :将匿名用户的权限置为空或者像我那样只读都可以
    password-db = passwd :引用权限用户信息为passwd文件

    如果有需要的可以重启svn,需要找到重启的svn进程,请注意重启时需要在svn工程目录外侧执行命令

    命令:

    查找svn进程服务:ps -ef|grep svnserve
    杀掉进程: kill -9 进程ID
    启动svn: svnserve -d -r 目录名

    image.png

    可以看到,svn的启动命令已经在查找的进程中给出了,当然这里如果不是在svn工程列表目录外部操作,请一定注意启动命令后面的目录地址。

    现在测试:

    1、在本地项目checkout工程(之后需要输入密码),然后添加并提交到服务器

    2、到linux中你需要的目录下svn checkout svn://服务器IP或域名/工程目录(我这里是tgRsync) --username 用户名,发现文件可以同步过来

    image.png

    添加文件:
    svn add 文件名

    提交文件(含备注):
    svn commit -m "备注内容" 文件名

    更新文件(需要制定版本):
    svn update -r 修正版本 文件名

    相关文章

      网友评论

        本文标题:linux下svn服务器创建工程以及分配权限

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