问题:
3. 合并分支—到主线
进入分支目录,怎么进?
4. 同步和合并是一回事?
5. 何为 研发版本对应的测试版本?
6. svn delete 能批量删除吗?
7. 能直接操纵SVN的数据库文件吗?
版本思想
NO.1
版本管理过程思想总结
1. 有新分支要求时:
1)要求RD提供信息:
a),新分支如何命名?
b),如果用于新功能引入,1,提供新功能有哪些?2,新功能引入计划是怎样的?
c),如果新功能开发完成,1,提供发布计划?2,提供测试计划?
2)
我需要 完成哪些事情:
a),建新功能分支
b),对 如下表格进行更新: 2,新功能同步记录表 3,发布信息表 4,项目列表 5,版本库列表 6,url列表 7,项目树 8,项目同步表 9,新项目同步记录表
2. 各表解释:
版本库列表:以最根目录的版本库为准。------从SVN 服务器直接可以得到数据。
NO.2
(ADD、重命名,移动,)如何实现SVN服务器代码从无—>有的过程。(拉分支)
方法一,
1. SVN服务器创建空目录(以分支名命名)
2. 用户本地CO下来
3. 用户本地加进代码文件,CI上去。即实现了有。
方法二,(针对有很多层级关系时)
1. 建空目录(由我建空目录)
在用户本地工作目录中,从已有文件svn cp到目的路径去。
删除原有名称的目录。Svn
delete 库名 –m “ 注释内容 ”
SVN常用命令:
NO.1
客户端可以做的事情:在库中创建目录,
Kiki总结:SVN的世界里都是库,各种SVN命令都是针对库而言的,另外客户端软件也是以库为最小显示单位。
Svn import ,svn copy, svn delete, svn list
, svn revert
导入代码到SVN服务器
1. svn import (只能从本地导入)
2. svn copy (copy操作可以从WC到WC;WC到URL;URL到WC;URL到URL。现在SVN只支持同一个仓库内文件的拷贝,不允许跨仓库操作。)---(即本地<-àURL)
如:
新建分支—有内容的分支
创建目录
在客户端软件直接创建。Create
folder
svn copy http://10.58.100.247/test/S204/trunk/ http://10.58.100.247/test/S204/fix/
svn copy http://10.58.100.247/test2/hardware/BUGLIST/20091127/
http://10.58.100.247/test2/hardware/BUGLIST/20091127/dada -m "cp test"
新项目的产生-------从已有项目产生
建分支,删分支(路径必须是 file:/// 或者 http:// )
Svn 开头的命令都是属于提交,都要写日志(可以通过设置钩子限制来达到)。
Linux的世界中一切皆文件,而svn 库的一切皆文件,所有的文件都可以用相同的SVN命令操作。(如svn
copy, svn delete, svn import)
a), 创建分支— ----copy 源路径 目的路径 –m “ 注释内容”
svn copy http://10.58.100.247/test/softd/voip/gva699v1.0-sw/trunk/doc/sessionTimer.txt
http://10.58.100.247/test/softd/sessionTimer.txt -m "cp test file"
导入:
Svn import /home/xufuli/dsl/Grn5N3.AZ56S
http://10.58.100.247/test/softd/voip/Grn5N3.AZ56S -m "import Grn5N3.AZ56S "
删除分支
删除分支/文件/(是否可以不加注释,要看此库是否用钩子限制了);如果钩子限制,就必须写注释。
svn delete
http://10.58.100.247/test/ -------目录(错)
svn delete
http://10.58.100.247/test/softd/nm -------库
svn delete
http://10.58.100.247/test/softd/voip/xufuli -------库
svn delete http://10.58.100.247/test2/hardware/BUGLIST/20091127/CM110_buglist.xls
svn revert 取消一些修改。
查看版本库内容
svn list
file:///home/kikiTest/S204/
svn list
http://10.58.100.247/test/S204/fix/
NO.5一个好习惯
永远写上源名 目标名
NO.7 rsync
备份属于linux的备份,而非svn针对库的备份。
Tar包直接对整个目录(可用来代表部门)进行备份。
Rsync 也是直接对整个目录进行备份的。
NO.10
ubuntu搭建svn环境--(svn命令整理)
.linux 软link是文件,不是目录,所以不能写成如: kiki/