用乌龟(TortoiseSvn) 创建分支(Branch)和标签(Tag)
——项目基线的建立
前言
版本管理系统有两个基本的功能分支(Branch)管理和标记(Tag)管理。分支用于在并行开发,当分支上的功能开发完毕、测试通过以后)就可以将分支上的功能合并到主分支(Trunk)上。而利用标记(Tag)功能就可以在任何时间创建一个发布版本。Subervsion没有一个特殊命令来创建Brach或Tag,而是用了一个所谓的“廉价拷贝-cheap copies”来实现。廉价拷贝和Unix中的硬链接(Hard Link)类似,也就是说不是在版本库中创建一个拷贝,而是通过一个链接指向特定发布版本的内部链接。基于这种实现的分支和标记不但创建容易而且不占用多余的空间。
操作步骤
首先你在本地要有一个你想拷贝到Brach或Tag中工作拷贝(Working Copy),例如E:\test。然后选中这工作拷贝文件夹,点击右键选中TortoiseSVN->分支/标记
在接下来的对话框中你会要求输入创建分支或标记的目标路径
创建分支或标记的时候,你有三个选项版本库中的最新版本,版本库中的指定版本,工作副本。
最新版本(HEAD revision in the repository)——直接从版本库中最新创建,由于不需要从你的工作拷贝中传输数据,创建过程会很快。
版本库中的指定版本(Specific revision in the repository)——同样是从版本库中创建,不同的是你可以指定一个版本号。如果你忘了版本号,可以通过显示版本记录来找到你想要的版本号(如下图)。这种方式同样不需要从你的工作拷贝中传输数据,创建过程也很快。
工作副本——这种方式会依据当前工作拷贝的版本状况(无论是你做了本地的修改,或是将其中的某些文件更新到了一个历史版本)来创建分支拷贝。这种创建方式会根据工作副本中每个文件的版本情况来决定是否要从工作拷贝向版本库中传输数据。
最有一个选项就是“切换工作副本至分支/标记”选项,如果选中这个选项,顾名思义你用来创建分支或标记的工作拷贝就会自动切换到指定创建的版本或标记的。当然你可以通过Switch(重新定位)和Checkout(检出)功能来完成切换的工作。
实际操作步骤记录:
1.在tag目录下创建即将建立的tag目录
D:\SVN\2014-ECDT\tags\01.ProjectBaseline\02. ECDT_Demo_Vx.y
2.将需要加入该目录的文件或目录分别执行tag分支的操作
3然后输入正确的URL如下图:
注意:
URL就是你要存放所有tag文件的路径,比如一般svn库根目录下会有三个目录:“branches tags trunk”,标签目录就放在tags目录下。这个URL一定要正确,如果对单个文件打TAG则在路径后面手动添加上该文件的名字,如果对整个目录打tag则在路径后面加上目标文件夹得新名字,否则会报错,如“错误:****** 路径 已经存在”
如果出现以下提示,请点击“是”并忽略之:
弹出以下窗口后,就可以等会儿去检查/tag目录下相应子目录下的目标文件是否存在了。
进入/tag目录下请先执行SVN库更新,保证之前打的tag相关文件已经部署到目标目录下。
怎么样,是否需要的文件或者目录都在目标路径下存在了呢?