zoukankan      html  css  js  c++  java
  • svn配置及基本使用

    svn软件下载地址
    http://subversion.apache.org/packages.html
    在安装TortoiseSVN时安装客户端和服务端

    下以svn在windows下使用为例,linux上类似

    一:svn使用
    1.创建多个svn仓库
    svnadmin create E:/svnServer/web
    svnadmin create E:/svnServer/ot

    2.启动仓库服务
    svnserve -d(独立端口运行) -r(仓库地址)
    svnserve -d -r E:/svnServer/web //启动web仓库服务
    svn服务走svn协议,端口号码是3690
    E:/svnLocal/hkui>svn co svn://127.0.0.1
    svn co --username 用户名 --password 密码 svn://127.0.0.1/web

    3.使用svn服务
    在E:/svnLocal/hkui下新建 a.php
    添加到svn仓库:svn add 文件或者目录(多个文件或目录以空格隔开即可)
    svn add E:/svnLocal/hkui/a.php
    提交到远程仓库
    svn ci 文件路径 -m "注释内容" (不想写注释内容就 -m --force-log)
    svn commit E:/svnLocal/hkui/a.php -m "第一个文件"
    更新
    svn update --username 用户名 --password 密码 --force --no-auth-cache 目标目录 (钩子可利用此同步仓库)

    4.开启仓库匿名账号权限
    在操作仓库的conf/svnserve.conf里配置匿名账号的权限
    anon-access = write
    无需重启服务即可
    日志:db/revprops 下
    内容:db/revs 下

    5.运行多个仓库服务

    把所有仓库的上级目录当成服务启动起来
    更换仓库地址 删除.svn 重新check out

    6.svn冲突
    在不同地方修改 update下来后合并
    在相同的地方修改,调整代码,删除冲突的其它三个文件 再提交即可

    7.账号和权限
    一:给具体用户设置权限
    在conf/svnserve.conf 中开启
    password-db和authz-db = authz
    在passwd中添加用户和密码
    hkui=hkui123
    tom=tom123
    在authz里配置相应权限
    配置完passwd后必须给相应的用户在authz里配置权限
    给指定的仓库账号设置权限
    仓库有种类型设置
    1.启动运行多个仓库服务
    svnserve -d -r E:/svnServer (svnServer下有web和ot两个仓库)
    [web:/] 表示要给多个仓库的web仓库配置访问权限
    [ot:/] 当然是在ot仓库的配置文件里配置 权限
    2.运行启动单一仓库服务 svnserve -d -r E:/svnServer/web
    [/] 表示给单一的仓库设置访问权限
    *= 表示其它用户没有操作权限
    r只能update rw能update和commit
    比如这里是 运行多个仓库服务的
    hkui能够读写,tom只能读,其它用户无任何权限
    [web:/]
    hkui=rw
    tom=r
    *=
    二:给一个组别设置权限
    再在passwd中添加
    php=php123
    js=js123
    java=java123
    在authz里
    [groups]
    language=php,js,java #表示同属一个组
    [web:/]
    hkui=rw
    tom=r
    @language=rw #表示language组的权限是rw
    *=
    三:开启只操作某个目录的权限
    比如web目录下的Video
    1.管理员创建video目录,提交到svn仓库
    2.给外部团队设置账号和设置工作目录,和其分支目录权限
    passwd中
    [users]
    hkui=hkui123
    tom=tom123
    php=php123
    js=js123
    java=java123

    w1=w123
    w2=w223
    w3=w323
    authz中
    [groups]
    language=php,js,java
    w=w1,w2,w3

    [web:/]
    hkui=rw
    tom=r
    @language=rw
    *=

    [web:/video]
    @w=rw
    *= (如果设置该项 ,只有w组的成员能操作video目录,管理员也不可以)
    3.外部团队建立与仓库的联系 (checkout)
    svn co svn://127.0.0.1/web/video (只有权限和video联系)
    4.外部团队 操作文件并提交到仓库
    5.管理员更新即可
    四:设置开机启动项服务
    sc create svnd binPath= "D:/install/TortoiseSVN/192/bin/svnserve.exe -r E:/svnServer --service" start= auto
    删除服务
    sc delete svnd
    五:查看工作日志
    开启账号并配置权限后注意把svnserve.conf里的
    anon-access = write改为anon-access = none而不是注释
    修改完记得先清空缓存

    钩子

    在windows下为post-commit.bat

    在Linux下post-commit 记得给可执行权限即可

    export LANG=en_US.UTF-8
    /usr/bin/svn update --username ybjmobile --password 123456  /alidata/www/mobile

    svn update --username 用户名 --password 密码 目标目录

    ------------------------------------------

    在centos下查看svn服务

    ps aux|grep svn

    [root@localhost web]# ps aux|grep svn
    root 3243 0.0 0.0 174512 1012 ? Ss 21:35 0:00 svnserve -d -r /var/www/svn_db
    root 5623 0.0 0.0 103320 864 pts/1 S+ 22:13 0:00 grep svn

  • 相关阅读:
    Ubuntu 18.04 设置静态IP
    面试问题总结
    hadoop集群搭建流程
    胡适:天下没有白费的努力
    学习的技术内容
    Windows MySql安装
    MySql 基础知识
    windows maven 安装与配置
    Logstash抽取数据到Elasticsearch(1)
    后台运行导入数据库
  • 原文地址:https://www.cnblogs.com/HKUI/p/4915796.html
Copyright © 2011-2022 走看看