Subversion安装升级手册
版本号:1.0
神州数码思特奇信息技术股份有限公司
2010-08-10
元数据管理用户手册 第2页 共22页
文档信息 文档名称 Subversion安装升级手册 发布版本 起草时间 2010年8月10日 定稿时间 2010年8月20日 当前版本 姓名 部门 电话 电子邮件 起草人 文档修改记录 序号 修改时间 1 2 3 4 5 6 7 8 9 10 审阅人 V1.0 V1.0 修改人 主要修改 存档版本
神州数码思特奇信息技术股份有限公司
地址:北京市海淀区上地九街9号数码科技广场二层(100085) 电话 (Tel) :(010) 58856600 传真 (Fax):(010) 62969630
元数据管理用户手册 第3页 共22页
目 录
1. 引言.......................................................................................................................... 5
1.1. 编写目的..................................................................................................... 5 1.2. 参考资料..................................................................................................... 5 2. 软件概述..................................................................................... 错误!未定义书签。 2.1. 目标.............................................................................. 错误!未定义书签。 2.2. 功能模块....................................................................... 错误!未定义书签。 3. 运行环境..................................................................................... 错误!未定义书签。
3.1. 4.1.
软件环境....................................................................... 错误!未定义书签。 元数据搜索 ................................................................... 错误!未定义书签。 4.1.1. 4.1.2. 4.2.
全文检索................................................................ 错误!未定义书签。 分类型搜索 ............................................................ 错误!未定义书签。
4. 使用说明..................................................................................... 错误!未定义书签。
元数据浏览 ................................................................... 错误!未定义书签。 4.2.1. 元数据类型 ............................................................ 错误!未定义书签。
4.2.1.1. 4.2.1.2. 4.2.1.3. 4.2.1.4. 4.2.1.5. 4.2.1.6. 4.2.1.7. 4.2.1.8. 4.2.1.9. 4.2.1.10. 4.2.1.11. 4.2.1.12. 4.2.1.13. 4.2.1.14. 4.2.1.15. 4.2.1.16. 4.2.1.17. 4.2.1.18. 4.2.1.19. 4.2.1.20. 4.2.1.21. 4.2.1.22. 4.2.1.23.
包(Package) ......................................... 错误!未定义书签。 数据库(DataManager) ........................... 错误!未定义书签。 数据库用户(Schema) ............................ 错误!未定义书签。 数据库表(Table) ................................... 错误!未定义书签。 视图(View) .......................................... 错误!未定义书签。 表字段(Column) ................................... 错误!未定义书签。 索引(Index).......................................... 错误!未定义书签。 存储过程(Procedure) ............................ 错误!未定义书签。 触发器(Trigger).................................... 错误!未定义书签。 键值(Key) ............................................ 错误!未定义书签。 业务领域(BizDomain) .......................... 错误!未定义书签。 业务分类(Taxonomy)............................ 错误!未定义书签。 业务元数据【指标解释】(Concept) ........ 错误!未定义书签。 OLAP用户(OLAP Schema)................... 错误!未定义书签。 维度【度量】(Dimension) ...................... 错误!未定义书签。 维度层次体系(Hierarchy)...................... 错误!未定义书签。 维度层次(Level)................................... 错误!未定义书签。 数据立方体(Cube)................................ 错误!未定义书签。 硬件(Machine) ..................................... 错误!未定义书签。 软件(Software) ..................................... 错误!未定义书签。 模块(Component) ................................. 错误!未定义书签。 转换过程(TransformationMap)............... 错误!未定义书签。 转换(Transformation) ............................ 错误!未定义书签。
4.2.2. 元数据详细信息 ..................................................... 错误!未定义书签。
4.2.2.1. 分类树 ..................................................... 错误!未定义书签。
4.2.2.2. 4.2.2.3. 4.2.2.4.
基本信息.................................................. 错误!未定义书签。 基本信息.................................................. 错误!未定义书签。 属性......................................................... 错误!未定义书签。
神州数码思特奇信息技术股份有限公司
地址:北京市海淀区上地九街9号数码科技广场二层(100085) 电话 (Tel) :(010) 58856600 传真 (Fax):(010) 62969630
元数据管理用户手册 第4页 共22页
4.2.2.5. 依赖......................................................... 错误!未定义书签。
4.2.2.6. 版本......................................................... 错误!未定义书签。
4.2.2.7. 转换关系.................................................. 错误!未定义书签。 4.2.3. 元数据操作 ............................................................ 错误!未定义书签。
4.2.3.1. 创建......................................................... 错误!未定义书签。
4.2.3.2. 4.2.3.3. 4.2.3.4. 4.2.3.5.
4.3.
4.3.1. 4.3.2. 4.3.3. 4.3.4. 4.3.5. 4.3.6. 4.4.
属性修改.................................................. 错误!未定义书签。 删除......................................................... 错误!未定义书签。 分析......................................................... 错误!未定义书签。 导出......................................................... 错误!未定义书签。
元数据导入 ................................................................... 错误!未定义书签。
建模工具................................................................ 错误!未定义书签。 数据库 ................................................................... 错误!未定义书签。 业务元数据 ............................................................ 错误!未定义书签。 ETL过程 ............................................................... 错误!未定义书签。 分析工具................................................................ 错误!未定义书签。 第三方元数据(CWM) ......................................... 错误!未定义书签。
系统管理....................................................................... 错误!未定义书签。 4.4.1. 元数据存储库管理.................................................. 错误!未定义书签。
4.4.1.1. 元数据存储库........................................... 错误!未定义书签。 4.4.1.2. 包 ............................................................ 错误!未定义书签。 4.4.2. 权限管理................................................................ 错误!未定义书签。 4.4.2.1. 功能权限.................................................. 错误!未定义书签。 4.4.2.2. 操作权限.................................................. 错误!未定义书签。 4.4.2.3. 元数据访问权限 ....................................... 错误!未定义书签。 4.4.3. 元数据自动更新管理 .............................................. 错误!未定义书签。
4.4.3.1. 4.4.3.2. 4.4.4.
时钟管理.................................................. 错误!未定义书签。 自动更新任务管理.................................... 错误!未定义书签。
元模型管理 ............................................................ 错误!未定义书签。
神州数码思特奇信息技术股份有限公司
地址:北京市海淀区上地九街9号数码科技广场二层(100085) 电话 (Tel) :(010) 58856600 传真 (Fax):(010) 62969630
元数据管理用户手册 第5页 共22页
1. 引言
1.1. 编写目的
部门Subversion安装升级及日常使用手册。
1.2. 参考资料
《svnbook-zh-1.6.pdf》
2. 背景
2.1. 现状
部门内部开发配置管理主要通过Subversion进行,定期同步到公司Harvest服务器,以下是部门配置服务情况:
目前采用Subversion1.4.3+RedHat Linux[版本:Red Hat Enterprise
Linux Server release 5.4 (Tikanga)],采用svn协议进行代码库管理;
共创建liferay、poc、vas-odms、metamgr、etlui、strtus2、dReport、
theme等配置库;
系统用户及权限维护通过修改后台文件的方式进行管理;
通过SVN客户端(TorToiseSVN)工具或者Eclipse插件进行代码库的
检如检出;
代码库存储方式有文件系统和BDB方式;
2.2. 主要问题
系统问题:
神州数码思特奇信息技术股份有限公司
地址:北京市海淀区上地九街9号数码科技广场二层(100085) 电话 (Tel) :(010) 58856600 传真 (Fax):(010) 62969630
元数据管理用户手册 第6页 共22页
存储库维护、用户权限维护不方便,修改配置文件需要重启后台服务; 浏览代码必须要按照SVN客户端,文档不方便共享;
SVN前期使用问题总结:
将代码打包放入SVN存储库,把SVN当做FTP服务器使用;
将系统运行时的一些临时文件导入存储库,增加SVN服务器系统开销; SVN存储库创建方式不尽合理,branchs、tags没有使用或者不太合理
3. SVN安装
3.1. 版本选择
SVN在Linux平台下提供多种安装版本:
手工编译版本
版本较多,可以下载到最新的版本,需要手工进行编译安装,若采用HTTP协议,需要安装Apache以及进行集成 rpm版本
可选择版本有限,安装简易方便
第三方包装版本
扩展管理功能,增加管理控制台维护界面,一般集成Apache,安装简易方便;可选择版本较少;
结合需求,选择第三方包装版本作为部门SVN安装介质(CollabNet Subversion Edge 1.1)下载地址:
http://www.collab.net/downloads/subversion/redhat.html 其它版本选择:
http://subversion.apache.org/
3.2. 基础环境安装
CollabNet Subversion Edge 1.1需要JDK1.6以及Python2.4以上环境支持
1. JDK安装
下载Linux版本JDK,如jre-6u20-linux-i586.bin
安装JDK,在Linux命令行输入 $ sudo ./ jre-6u20-linux-i586.bin,系统出现安装协议,
若不想读协议请按[q],系统出现提示yes/no,输入yes确认安装;
神州数码思特奇信息技术股份有限公司
地址:北京市海淀区上地九街9号数码科技广场二层(100085) 电话 (Tel) :(010) 58856600 传真 (Fax):(010) 62969630
元数据管理用户手册 第7页 共22页
提示:若需要设置默认程序,可以通过【update-alternatives】命令设置,如:
$ sudo update-alternatives --install /usr/local/bin/java java /usr/local/lib/java/sun-jre/bin/java 40
若要设置环境变量,可以设置全局变量, 修改文件/etc/profile,增加以下内容:
export JAVA_HOME=/usr/java/jdk1.6.0_05 export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$CLASSPATH export PATH=$PATH:$JAVA_HOME/jre/bin 或者修改当前用户环境变量,
修改文件user/ .bashrc文件,修改方式同上
2. Python安装
Python版本不能低于2.6,可以下载源码进行手工编译安装或者下载编译后的rpm版本安装,下载地址:http://www.python.org/
rpm版本安装
命令:rpm -Uvh *.rpm[安装] 查询所有包 rpm -qa 若要卸载,运行rpm -e rmpname 编译版本安装
解压安装包: $ tar –jxvf Python-2.5.2.tar.bz2 到解压文件目录 $ cd Python-2.5.2 配置 $./configure 编译 $ make 编译安装 $ make install 编译过程可能会出现问题: LookupError: unknown encoding: GB2312 解决方式:在make之前执行: export LC_CTYPE=en_US.UTF-8 安装完成,在命令行输入:python,出现python解释器即说明安装成功
3. SVN安装
解压安装包(解压请不要用root账号)
$ tar zxf CollabNetSubversionEdge-x.y.z_linux-x86.tar.gz 解压完默认创建csvn文件夹
安装 $ cd csvn 运行
$ sudo bin/csvn install
神州数码思特奇信息技术股份有限公司
地址:北京市海淀区上地九街9号数码科技广场二层(100085) 电话 (Tel) :(010) 58856600 传真 (Fax):(010) 62969630
元数据管理用户手册 第8页 共22页
若系统报JAVA_HOME没有设置的问题,可以通过修改bin/csvn文件解决,vi csvn文件,在文件头增加
JAVA_HOME=\"/usr/local/lib/java/jre1.6.0_20\"
启动访问
$ bin/csvn start
此时,到浏览器输入:http://localhost:3343/csvn地址,默认用户名密码为admin/admin
即看到下面的页面,表面安装成功:
系统默认Subversion未启动,可以通过首页面,start按钮启动服务,服务正常启动如下图:
若Subversion不能正常启动,可以点击Administration导航查看系统日志:
神州数码思特奇信息技术股份有限公司
地址:北京市海淀区上地九街9号数码科技广场二层(100085) 电话 (Tel) :(010) 58856600 传真 (Fax):(010) 62969630
元数据管理用户手册 第9页 共22页
常见不能启动问题,Subversion不能正常启动,日志报下面错误:
ERROR services.CommandLineService - Exit status=1 Process error: httpd: bad user name 7230
这是apahe的一个问题,主要原因是目录权限问题,解决方式:
不要用root 账户解压svn安装包 Apache启动时RUN_AS_USER不要设置为root,具体修改csvn/data/conf/csvn.conf中RUN_AS_USER项 4. SVN存储库设置
通过浏览器进入SVN管理控制台,点击导航”Administration”,在“Subversion Server Settings”菜单下
设置Repository Parent Directory,设置存储库位置,点击“Save”按钮提交保存,系统默认Hostname为服务器名,建议改为IP地址
神州数码思特奇信息技术股份有限公司
地址:北京市海淀区上地九街9号数码科技广场二层(100085) 电话 (Tel) :(010) 58856600 传真 (Fax):(010) 62969630
元数据管理用户手册 第10页 共22页
常见命令补充:
$ bin/csvn start 启动 $ bin/csvn stop 停止 $ bin/csvn restart 服务重启 $ bin/svnadmin SVN管理命令,参考SVN文档 $ bin/svnlook 版本库查看命令
4. SVN迁移
SVN采用文件数据库或者文件方式建立存储库,可以直接将存储库拷贝的的方式迁移以及通过svn提供的dump方式进行迁移,推荐dump方式,直接拷贝文件的方式可能存在版本兼容性的一些问题(尽管SVN对于版本向下兼容做得比较好);
准备:停止要迁移的版本库,切忌不要再启动状态下迁移文档库,这样若在迁移过程中有版本提交,会导致版本库一致性出现问题;
4.1. 文件拷贝的方式
停止SVN访问,将旧的文档库拷贝到新的文档库目录,启动服务即可;
4.2. Dump方式迁移
4.2.1. 导出文件库
通过svnlook命令查看版本库版本:
$ svnlook youngest repositoryName 其中repositoryName可以为带目录
运行dump命令导出文档库,建议采用增量的方式(单个文件太大,影响速度以及中间若有问题,需要全部重新导入),例如:
若通过svnlook查看版本库版本号为92,我们分两个文件进行导出,可以运行:
$ svnadmin dump repositoryName -r 0:50 > dumpfile1 [注意:repositoryName可以对应存储库文件路径]
$ svnadmin dump repositoryName -r 51:92 --incremental > dumpfile2
【注意:不是第一个文件,一定要添加红色属性】 当然,你也可以导出一个文件
$ svnadmin dump repositoryName -r 0:92 > dumpfile
神州数码思特奇信息技术股份有限公司
地址:北京市海淀区上地九街9号数码科技广场二层(100085) 电话 (Tel) :(010) 58856600 传真 (Fax):(010) 62969630
元数据管理用户手册 第11页 共22页
4.2.2. 导入文件
前提:保证要导入的存储库已经创建
创建存储库时,可以通过管理控制台“Repositories”导航标签的“New Repository”菜单进行创建,如图:
对于需要迁移的存储库创建时,切记不要勾选”Use Template:Create standard trunk/branches/tags structure”选型,否则会导致不能正常导入的问题;
执行命令:$: svnadmin load newRepo2 < dumpfile1
若为增量方式多个文件导入,顺序执行即可;
5. SVN管理
5.1. Subversion服务管理【后台】
通过管理控制台计入svn安装目录csvn 运行$ bin/start 启动Subversion服务 运行$ bin/restart 重启Subversion服务
运行$ bin/stop 停止Subversion服务,重启时,有可能有些服务不能正常停止,建议通过stop然后start的方式来进行,stop服务后通过命令$ps –ef|grep csvn 来查看,对于为结束进程,直接kill,然后再start
神州数码思特奇信息技术股份有限公司
地址:北京市海淀区上地九街9号数码科技广场二层(100085) 电话 (Tel) :(010) 58856600 传真 (Fax):(010) 62969630
元数据管理用户手册 第12页 共22页
5.2. Subversion服务管理【管理控制台】
打开浏览器,输入地址:http://172.16.9.80:3343/csvn,输入管理员用户名及密码进
入管理页面:
需要停止Subversion服务,点击“Stop”按钮,同理,需要启动服务,请点击“Start”按钮;
在服务控制台,我们会看到两个服务地址:http://172.16.9.80:18080/svn/和http://172.16.9.80:18080/viewvc/,和Subversion客户端工具集成,用http://172.16.9.80:18080/svn/这个服务,http://172.16.9.80:18080/viewvc/的服务,主要用于浏览器查看代码库及代码信息;
5.3. Subversion存储库管理
在管理控制台点击“Repositories”,可以看到存储库管理控制台:
神州数码思特奇信息技术股份有限公司
地址:北京市海淀区上地九街9号数码科技广场二层(100085) 电话 (Tel) :(010) 58856600 传真 (Fax):(010) 62969630
元数据管理用户手册 第13页 共22页
Repository List
查看所有存储库,存储库地址见列表;
Discover Repositories
刷新存储库,当从后台创建存储库或者删除存储库时候,可以通过此命令进行刷新; New Repository 创建存储库,
在Name输入框输入存储库名称,根据实际情况勾选“Create standard trunk/branches/tags structure”【改选项设定是否按照 主版本/分支/标记这种默认的模板结构来管理版本库】,点击“Create”按钮,创建存储库 删除存储库
直接通过远程终端,找到存储库位置,删除存储库即可,删除完成点击“Discover
Repositories”刷新前端;
Access Rules
管理存储库访问权限,改配置规则完全同在服务器端管理“authz”文件,例如:
假设目录结构 pprt/ branches/ tags/ trunk/ 神州数码思特奇信息技术股份有限公司
地址:北京市海淀区上地九街9号数码科技广场二层(100085) 电话 (Tel) :(010) 58856600 传真 (Fax):(010) 62969630
元数据管理用户手册 第14页 共22页
将所有存储库读写权限分配给所有用户,可以:
[/] *=rw
若需要将所有文档库读权限分配给所有用户,而pprt存储库只有用户A具有写权限,则可以:
[pprt:/] A = rw *= r
若要控制pprt项目中,branch目录中有A用户可以读写,B用户只能读,而其他用户不能看,则可以 [pprt:/branch] A = rw B = r *=
可以定义组来进行以组为单位进行授权
创建dev、和test组,并指定dev组包含成员A,B,C;test组包含成员D,E [groups] dev=A, B, C test = D, E
以组为单位进行授权,如dev组能对pprt项目进行读写操作,而test成员只能查看pprt下branches目录下的文件
[pprt:/] @dev = rw @test = r
[pprt:/branches] @dev = rw @test = r [pprt:/trunk] @dev = rw @test = [pprt:/tags] @dev = rw @test =
5.4. Subversion用户管理
用户列表
点击“Users”导航栏,点击“User List”菜单,显示用户列表
神州数码思特奇信息技术股份有限公司
地址:北京市海淀区上地九街9号数码科技广场二层(100085) 电话 (Tel) :(010) 58856600 传真 (Fax):(010) 62969630
元数据管理用户手册 第15页 共22页
创建用户
选择导航栏“Users”,选择“New User”菜单,输入用户信息
选择用户角色,此处的用户角色主要是指Subversion管理控制台的角色,与存储库访问角色无关;
删除用户
管理员登录系统,点击“Users”导航栏,点击“User List”菜单,选择需要删除的用户,点击“Delete”按钮,删除即可; 密码修改
用户登录系统,点击“Users”导航栏
神州数码思特奇信息技术股份有限公司
地址:北京市海淀区上地九街9号数码科技广场二层(100085) 电话 (Tel) :(010) 58856600 传真 (Fax):(010) 62969630
元数据管理用户手册 第16页 共22页
点击“Edit”按钮,
点击“Change password”链接
神州数码思特奇信息技术股份有限公司
地址:北京市海淀区上地九街9号数码科技广场二层(100085) 电话 (Tel) :(010) 58856600 传真 (Fax):(010) 62969630
元数据管理用户手册 第17页 共22页
输入密码,点击“Update”按钮保存;
5.5. Subversion访问设置
管理员登录到系统,点击“Admimistration” >>”Subversion Server Settings”,系统显示访问设置界面:
主要设置项:
Port:Svn服务端口号
Repository Parent Directory:SVN存储库目录地址
根据实际需要,可以修改SVN认证方式,具体见Authentication选项卡 服务器日志监控见:Server Logs
神州数码思特奇信息技术股份有限公司
地址:北京市海淀区上地九街9号数码科技广场二层(100085) 电话 (Tel) :(010) 58856600 传真 (Fax):(010) 62969630
元数据管理用户手册 第18页 共22页
5.6. Subversion客户端切换
若SVN服务发生变化可以通过下述方法进行切换;
若用户名密码和之前的不同,请删除本地目录:C:\\Documents and
Settings\\Administrator\\Application Data\\Subversion\\auth\\svn.simple下
的文件
在Eclipse中点击“SVN资源库”
选择需要重新定位的项目,点击右键,在弹出菜单中选择“重新定位”
下一步,输入新的服务地址
神州数码思特奇信息技术股份有限公司
地址:北京市海淀区上地九街9号数码科技广场二层(100085) 电话 (Tel) :(010) 58856600 传真 (Fax):(010) 62969630
元数据管理用户手册 第19页 共22页
6. SVN管理总结
6.1. 存储库目录结构采用trunk、tags、branches结构
若项目名称为theme,推荐存储结构
其中trunk为主版本,这是整个项目工程的主线; branches为分支版本,主要用于版本分化的情况;
神州数码思特奇信息技术股份有限公司
地址:北京市海淀区上地九街9号数码科技广场二层(100085) 电话 (Tel) :(010) 58856600 传真 (Fax):(010) 62969630
元数据管理用户手册 第20页 共22页
tags为标记版本,用于标记一些特点的版本;
branches和tags对于Subversion来说没有什么区别,个人推荐branches作为分化版本开发配置库,tags用于标识发布库;
6.2. 保持本地版本、trunk、branches差距最小
在实际项目开发过程中,我们会经常遇到版本冲突、版本发布等问题,为减少这些问题的发生,尽量保证本地版本、trunk版本、branches版本尽可能一致; 定期进行分支版本和trunk版本进行合并,有利于保证产品的一致性;
6.3. SVN是团队开发协作工具,尽量保证开发库的紧凑和
有效
SVN库以管理部分文档,但不要把他作为FTP服务器;
SVN适合管理会变化的文档;
为保证高效,尽量不要将rar、zip、dump等压缩文件放到配置库,不要将SVN作为备份工具;
个人本地个性化信息、个人测试代码、临时文件不要上传到配置服务;
6.4. SVN客户端直接提交是一种危险操作
在Eclipse中,选择项目或者目录-》Team-》“提交“是一种危险的操作方式,永远记住,有了SVN,不是你一个人对他进行操作
神州数码思特奇信息技术股份有限公司
地址:北京市海淀区上地九街9号数码科技广场二层(100085) 电话 (Tel) :(010) 58856600 传真 (Fax):(010) 62969630
元数据管理用户手册 第21页 共22页
合理的方式是:Team-》“与资源库同步“
神州数码思特奇信息技术股份有限公司
地址:北京市海淀区上地九街9号数码科技广场二层(100085) 电话 (Tel) :(010) 58856600 传真 (Fax):(010) 62969630
元数据管理用户手册 第22页 共22页
6.5. 代码需要定期维护和清理
对于废弃的类、文档、文件请定期清除;这样会减少不必要的麻烦;
神州数码思特奇信息技术股份有限公司
地址:北京市海淀区上地九街9号数码科技广场二层(100085) 电话 (Tel) :(010) 58856600 传真 (Fax):(010) 62969630
因篇幅问题不能全部显示,请点此查看更多更全内容