SVN中的branch和tag
branch
SVN最有用的功能之一是可以创建branch,以保护源码不被破坏性的修改。新branch用来开发新功能,避免将含有bugs和errors的代码直接提交到/trunk上,待新功能稳定后,再将branch上的源码合并到/trunk上。
创建新的branch很简单。只需要使用svn copy
命令将项目复制一份到/branches目录中,新分支需要一个唯一的命名以将其与/branches中的其他分支区别开。
svn copy\
\
-m "commit message"
-m "commit message" 为创建新分支时的注释。
在TortoiseSVN中创建分支 如果你使用的是TortoiseSVN图形化管理工具,创建分支时可以选择工作副本中要复制到/branches或/tag的文件夹,然后右键单击并选择命令TortoiseSVN→branch/tag....
新分支的默认目标URL是工作副本所在的源URL, 你需要将该URL编辑为branch或tag的新路径,而不是使用这样的URL:
https://subversion.assembla.com/svn/path/to/trunk
新branch或tag的URL如下:
https://subversion.assembla.com/svn/path/to/branch_name
tag 此外,你可以标记某些revisions,并且以后重新构建。
通常,tag用于创建项目的一个特定阶段的快照(如上线版本的tag),tag一般不会用来开发或者在tag的revision上做修改。
【SVN中的branch和tag】如果你想要在某个tag版本上做修改,应该从该tag拉取新的branch,在新branch上完成工作,并在工作完成后,在该branch上打上新的tag。
创建tag的方法和创建branch相似,不同之处仅仅在于tag的路径位于/tags中,而不是之前的/branches。
Subversion中的branches和tags没什么区别,区别仅仅在于用户如何使用这两个路径。一般来说,branches用来修改并最终合并到/trunk上,而tags用来创建项目特定时间点的快照,且永远不会被直接修改。
原文链接
Branching and Tagging in SVN
推荐阅读
- 热闹中的孤独
- JS中的各种宽高度定义及其应用
- 我眼中的佛系经纪人
- 《魔法科高中的劣等生》第26卷(Invasion篇)发售
- Android中的AES加密-下
- 放下心中的偶像包袱吧
- C语言字符函数中的isalnum()和iscntrl()你都知道吗
- C语言浮点函数中的modf和fmod详解
- C语言中的时间函数clock()和time()你都了解吗
- 如何在Mac中的文件选择框中打开系统隐藏文件夹