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
svn配置及基本使用的更多相关文章
- centos apache svn配置
单独安装svn服务: 安装svn软件 yum install subversion 创建根目录 mkdir -p /var/www/svn 创建版本库repos svnadmin create /va ...
- Eclipse插件SVN配置
Eclipse插件SVN配置 方法一 打开Eclipse点击[Help]-[Install New Software] 点击右边[Add]-在弹出窗口中输入 Name:svn Location:htt ...
- svn配置
svn配置 subverson.conf <Location /svn> DAV svn SVNListParentPath on SVNParentPath /var/repo Auth ...
- centos7.2环境nginx+mysql+php-fpm+svn配置walle自动化部署系统详解
centos7.2环境nginx+mysql+php-fpm+svn配置walle自动化部署系统详解 操作系统:centos 7.2 x86_64 安装walle系统服务端 1.以下安装,均在宿主机( ...
- Xcode SVN配置
Xcode SVN配置 编辑 ~/.subversion/config 文件 注意:假设".subversion"文件夹不存在.请执行"svn status" ...
- SVN配置钩子
安装测试环境:109 CentOS4.6 安装: SVN1.32http://subversion.tigris.org/downloads/subversion-1.3.2.tar.gz安装:解压 ...
- svn配置多仓库与权限控制
telnet: connect to address 47.106.115.228: Connection refused svn执行上下文错误由于目标计算机积极拒绝无法连接 标签: svn 2017 ...
- IntelliJ IDEA下SVN配置及使用
一.在IDEA中使用SVN,首先需要下载安装 TortoiseSVN 插件. 打开 TortoiseSVN 下载地址,选择适合自己的系统类型下载. 接下来,进行安装即可.选择Modify,默认 com ...
- SVN配置自启动-1053错误
主要内容:解决启动“配置的svn自启动服务”报1053错误 1. 环境: 系统: wind10 svn服务端版本: VisualSVN-Server-3.8.0-x64 2. 配置自启动 以管理员身份 ...
- SVN配置以及自己主动部署到apache虚拟文件夹
SVN配置以及自己主动部署到apache虚拟文件夹 一.VisualSVN server 服务端和TortoiseSVNclient下载 VisualSVN下载:http://subversion.a ...
随机推荐
- Tkinter Button按钮组件如何调用一个可以传入参数的函数
这里我们要使用python的lambda函数,lambda是创建一个匿名函数,冒号前十传入参数,后面是一个处理传入参数的单行表达式. 调用lambda函数返回表达式的结果. 首先让我们创建一个函数fu ...
- Linux文件的默认权限:umask
1. 文件的默认权限 Linux下当我们新建一个文件和目录时,该文件和目录的默认权限是什么? 通过umask命令来查看: $ umask0002 $ umask -Su=rwx,g=rwx,o=rx ...
- LeetCode OJ:Pascal's TriangleII(帕斯卡三角II)
Given an index k, return the kth row of the Pascal's triangle. For example, given k = 3,Return [1,3, ...
- LeetCode OJ :Unique Binary Search Trees II(唯一二叉搜索树)
题目如下所示:返回的结果是一个Node的Vector: Given n, generate all structurally unique BST's (binary search trees) th ...
- Android 中Activity,Window和View之间的关系
转自:http://hi.baidu.com/xiaofanqing/blog/item/8261ac114ab14f64cb80c435.html 我这里根据我个人的理解来讲讲我个人对这3个概念的理 ...
- OC-SEL 和 Class
[认识选择器]============================================ SEL 1.选择器(SEL)是一个变量类型. 2.选择器用来装成员消息(成员方法) people ...
- 剑指offer--34.数字在排序数组中出现的次数
时间限制:1秒 空间限制:32768K 热度指数:209611 本题知识点: 数组 题目描述 统计一个数字在排序数组中出现的次数. class Solution { public: int GetNu ...
- win7 无法链接到手机热点
作为一个对电脑不太懂的小白来说,链接个热点都是问题,来看看我怎么解决的吧. 之前连上过这个手机的热点,隔了有段时间了,今天连不上了,这是啥问题? 另外一台没连过这个手机热点的电脑是可以链接成功了,纳尼 ...
- mysql int(3)与int(11)的区别
总结,int(M) zerofill,加上zerofill后M才表现出有点点效果,比如 int(3) zerofill,你插入到数据库里的是10,则实际插入为010,也就是在前面补充加了一个0.如果i ...
- Python探索记(18)——文件File
# @Time : 2017/7/8 21:10 # @Author : 原创作者:谷哥的小弟 # @Site : 博客地址:http://blog.csdn.net/lfdfhl # @DESC : ...