26
2019
12

svn多项目多仓库实例

一、任务


1.安装subversion

2.创建多项目版本管理,配置统一权限



二、版本管理实例简介

1.实例仓库描述


创建eam,erp两个项目版本仓库,各项目都有trunk,branches,tags等常规版本目录,在branches下有v1版本分支


2.用户分组权限描述

1). 用户


2). 分组用户图(erp相关分组配置参考eam分组)


3). 项目仓库及路径权限配置(erp相关路径权限配置参照eam)



三、准备工作


安装centos7



四、任务一

centos7安装subversion

#执行安装subversion命令,默认服务端客户端都有安装

yum -y install subversion


常用服务端命令


svnserve: 控制svn系统服务的启动等

svnadmin: 版本的创建/导出/导入/删除等

svnlook: 查看版本库的信息等


常用客户端命令


svn checkout: 检出项目

svn export: 导出项目,导出文件不受版本控制

svn import: 导入项目,文件本身不受版本控制

svn add: 添加到版本控制

svn commit: 提交修改到服务端(创建一个新版本号)

svn update: 更新到工作副本

svn delete: 从版本库中删除文件或目录

svn diff: 版本差异比较

svn mkdir: 创建目录并增加到版本控制

svn cat: 不检出工作副本直接查看指定文件

svn revert: 工作副本还原

svn resolve: 冲突处理

svn lock: 锁定文件,防止其他成员对文件进行提交

svn unlock: 解锁文件



五、任务二

#创建svn根目录/svnroot

#创建版本库根目录/svnroot/repository

#创建统一配置文件根目录/svnroot/conf

mkdir -p /svnroot/repository /svnroot/conf


#创建eam版本库

svnadmin create --fs-type fsfs /svnroot/repository/eam


#创建erp版本库

svnadmin create --fs-type fsfs /svnroot/repository/erp


#复制/svnroot/repository/eam/conf/authz和/svnroot/repository/eam/conf/passwd到/svnroot/conf目录下

cp /svnroot/repository/eam/conf/authz /svnroot/conf/

cp /svnroot/repository/eam/conf/passwd /svnroot/conf/


#修改/svnroot/repository/eam/conf/svnserve.conf和/svnroot/repository/erp/conf/svnserve.conf

vim /svnroot/repository/eam/conf/svnserve.conf


编辑/svnroot/repository/eam/conf/svnserve.conf和/svnroot/repository/erp/conf/svnserve.conf

都改成以下内容,注释内容可以不去掉

[general]

###注释.....

anon-access = none

###注释.....

auth-access = write

###注释.....

password-db = /svnroot/conf/passwd

###注释.....

authz-db = /svnroot/conf/authz


编辑/svnroot/conf/passwd

[users]

admin = 123456

eam_leader = 123456

eam_dev1 = 123456

eam_dev2 = 123456

eam_dev3 = 123456

erp_leader = 123456

erp_dev1 = 123456

erp_dev2 = 123456

erp_dev3 = 123456


编辑/svnroot/conf/authz

[aliases]

[groups]

admin = admin

eam_leader = eam_leader

eam = eam_dev1,eam_dev2,eam_dev3

eam_trunk = eam_dev1,eam_dev2

eam_branches_v1 = eam_dev2

eam_tags = eam_dev3

erp_leader = erp_leader

erp = erp_dev1,erp_dev2,erp_dev3

erp_trunk =  erp_dev1,erp_dev2

erp_branches_v1 = erp_dev2

erp_tags = erp_dev3


[/]

@admin=rw


[eam:/]

@eam_leader = rw

@eam = r


[eam:/trunk]

@eam_trunk = rw


[eam:/branches/v1]

@eam_branches_v1 = rw


[eam:/tags]

@eam_tags = rw


[erp:/]

@erp_leader = rw

@erp = r


[erp:/trunk]

@erp_trunk = rw


[erp:/branches/v1]

@erp_branches_v1 = rw


[erp:/tags]

@erp_tags = rw


#使用svnserve启动所有版本库

svnserve -d -r /svnroot/repository

#级联创建trunk,branches/v1,tags文件夹

mkdir -p /test/trunk /test/branches/v1 /test/tags


#用admin账户完成svn import创建erp,eam对应的主干分支管理

svn import /test/ svn://localhost/eam --username=admin --password=123456 -m "创建主干分支路径"

svn import /test/ svn://localhost/erp --username=admin --password=123456 -m "创建主干分支路径"


最后可以使用类似TortoiseSVN之类的svn客户端查看版本权限及版本库路径配置是否正确

————————————————

版权声明:本文为CSDN博主「arsenalzjx」的原创文章,遵循CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。


原文链接:https://blog.csdn.net/arsenalzjx/article/details/82764842


« 上一篇 下一篇 »

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。