1 / 26 一、SVN 培训-重点分支、合并、tag VisualSVN Server TortoiseSVNCornerStone 1. 名 称解释 SVN 术语,Clearcase( UCM & Base)术语 repository vob 存储库 配置库 trunk base mainline integration-stream 主干 主线 集成流 branch development-stream 分支 开发流 tag baseline lable snapshot 标签 基线 快照 workcopy view 工作副本 视图 本地工作空间 意义是人赋予的 2 / 26 2. SVN 工作方式 3 / 26 4 / 26 5 / 26 6 / 26 二、Branch &Merging The next point to note is that merging always takes place within a working copy. If you want to merge changes into a branch, you have to have a working copy for that branch checked out, and invoke the merge wizard from that working copy using TortoiseSVN → Merge.... SVN 可以为一个版本库中的内容(主干)建立一个分支.分支和主干完全独立,就相当于把代码再复制一份,重新添加到版本库中。但 SVN 提供另一个功能,就是把主干做出的修改合并到分支中,以及把分支修改的内容合并到主干中。 示例:基于 TortoiseSVN 1 .建一个分支. 7 / 26 8 / 26 建立时要注意: 1.当前复制源,即专业术语中的 "主干(truck)" 2.分支存放的位置. 当然,分支也是在SVN 版本库中. 3.写上日志.这个大家应该懂的. 4.如果目录路径不存在,勾选“Create intermediate folders”,否则确认后会报错。 Switch 选项建议为空。switch 含义:是否把主干的路径切换到分支.如果勾选了,建立分支后,在主干里做出的修改并提交后,更新会提交到分支上。主干的版本源内容不会变。 这时我们看一下 trunk 目录的属性,可以看到它的路径已经变成: /calc/branches/my-calc-branch 了。 9 / 26 为了避免产生困惑。以及失误。在建立的时候不要勾上 "切换到分支" 的选项。如果勾上了,我们还是切换回去: 10 / 26 注意: 1.主干的目录 2.版本库源路径 这时你便可以在 /calc/branches/my-calc-branch 分支上开发新的功能,且不会影响到其他成员开发或维护主干的内容。 其他方向建分支: 在Repo-Browser 中: 1. Ctrl+拖拽的方式; 2. Copy to 3. ShowLog 中选择任意Reversion,右击->Branch/Tag 11 / 26 2 ....