`
eyejava
  • 浏览: 1270528 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

svn branch、tag & merge

阅读更多
svn中建立branch或者tag的方法比较简单,totoiseSVN中的操作是:
1.选择Branch/tag..
2.在出来的界面中的To URL中填上URL,一般是svn://IP/Project/branches/branch-1, 这样就建立了一个branch-1的branch. 建立tag是一样的操作,只不过URL一般是svn://IP/Project/tags/tag-1
3.后面的Create copy from是用于选择从你当前的working base中的哪个版本中建立branch/tag,可以根据自己的选择来订制,一般选择Head Revision
subclipse中几乎是一样的操作。

Merge分为很多种:
1.多个branch之间merge
2.branch merge到trunk
3.trunk merge到branch
第2种用的比较多,比如在otfs接口中netamount的需求提出后就得建立一个netamount的branch,trunk继续在非netamount的情况下继续开发,netamount单独开发,当netamount功能测试通过后,将netamount branch merge到trunk下,然后将trunk release。
第3种情况用的也不少,如上的例子,当用户进行netamount测试时,如果用户不想只测试netamount的功能,则需要将trunk中的修改merge到netamount branch,然后从netamount branch中发布一个版本供用户测试。

branch merge to trunk在tortoiseSVN操作如下:
1.选择TortoiseSVN->Merge
2.选择Reintegrate a branch
3.选择From URL,URL填好之后可以点击Show Log,可以看看这个branch是否是你要merge的内容,下面的Working copy中也可以Show Log,可以确认一下你的工作目录是否是trunk。确认后点击Next
4.Merge Options里面有些选项,根据需要来选择,Test Merge按钮会告诉你这次Merge会做哪些操作,最好先Test Merge一下!如果是预期的Merge操作,点击Merge则可以将branch Merge到本地工作目录下
5.有冲突的文件需要解决好冲突,解决之后点击svn commit则完成了merge

从多个revision中merge到本地工作目录在tortoiseSVN的操作如下:
1.选择TortoiseSVN->Merge
2.选择Merge a range of revisions
3.URL to merge from填上merge的来源,merge 来源一般和你的working copy是不同的branch或者working copy是trunk 而merge from是branch
4.Revision range to merge填上需要merge的revision,格式是1,3,5或者 1-10
5.后续操作同Reintegrate a branch

subclipse进行Merge操作同tortoiseSVN的操作方式有所区别,原理基本同Merge a range of revisions。
点击Team->Merge后,只有一个界面,这个界面提供了两种Merge操作方式:
1.Merge某个版本范围内的修改到本地工作目录上
2.Merge feature branch到trunk (也需要先merge到本地)
第1种的操作方法是:
1.在from url中填上branch的url
2.from revision中选择建立这个branch的revision号,不是最新的那个版本号!
3.to url框中勾上"Use 'From:' URL"这个check box, To Revision中选择需要需要Merge到的revision号,一般勾head revision
4.Dry run让你预览一下merge效果,Unified Diff将Merge的两边进行Diff并将Diff结果保存到文件中。(在我机器中Dry run没有窗口出来,diff结果的文件除非只有很小的变化,不然看得头大)
5.点击Merge将merge到本地,这时候与版本库进行一下同步应该和上一步的dry run有同样的效果,如果merge过来的东西不是你预期的更改可以选择revert,但是新增的文件需要手工删除!如果是预期的merge效果,那commit,记得在comments中写上merge来的branch、from revision、to revision(不要写head,写数字)

总的来看subclipse的merge操作并不方便,不如tortoiseSVN
分享到:
评论

相关推荐

    SVN trunk, branch, tag merge 等的应用

    综上所述,理解和熟练运用SVN的trunk、branch、tag以及merge机制对于软件开发团队来说至关重要,它们是实现高效协同开发、保持代码整洁有序的基础。同时,使用像"admintools"这样的辅助工具可以进一步提升SVN的管理...

    svn merge简单操作

    svn commit -m "Merge changes from branch to trunk" ``` ##### 5. 修改主干内容 接下来,对 `trunk/examples1` 进行一些更改,并提交这些更改到服务器。 ```bash # 修改trunk/examples1的内容 # 提交更改到...

    SVN中的Branches分支以及Tags标签详解与应用举例

    创建 Branch 分支或者 Tag 标签非常容易,只需要在 TortoiseSVN 中创建对应的文件夹,然后将其提交到 SVN 服务器中。例如,创建一个名为 v1.0 的分支,用于发布一个版本的文件。 Branches 分支的修改和使用 Merge ...

    SVN服务端配置手册

    - SVN Branch & Tag:创建和管理代码库的不同版本或分支 通过以上步骤,您已具备基本的SVN服务端配置和客户端使用的知识。在实际项目中,权限管理和版本控制是团队协作的重要环节,确保每个成员都能访问他们所需的...

    smartsvn for mac

    除了标准的SVN指令(例如checkout、update、commit、merge等)之外,其亦提供tag与branch处理(无需要为了转换不同的tag或branch而去处理URL)、内建档案比对与冲突处理器(conflict solver)等。使用者无需安装额外的工具...

    配置管理工具-SVN

    - **分支与合并**:使用`svn branch`创建分支,`svn merge`进行合并操作。 4. **图形化客户端**: - **TortoiseSVN**:Windows平台上的一个直观的SVN客户端,提供了与资源管理器集成的右键菜单,便于操作。 - **...

    smartsvn-windows-setup-11_0_4.zip

    除了标准的SVN指令(例如checkout、update、commit、merge等)之外,其亦提供tag与branch处理(无需要为了转换不同的tag或branch而去处理URL)、内建档案比对与冲突处理器(conflict solver)等。使用者无需安装额外的工具...

    SVN中文教程 SVN简明教程 SVN学习笔记

    - **Branch(分支)**和**Tag(标签)**:用于支持灵活的开发策略,分支用于并行开发,标签用于标记特定版本。 4. **SVN协同工作流程** - 开发者先从仓库检出最新代码到本地。 - 在本地完成代码修改后,进行`svn...

    SVN版本控制系统

    - Branch/Tag:创建分支或标签,分支用于长期并行开发,标签用于标记特定版本。 4. SVN仓库管理: SVN仓库是存储所有版本历史的地方。管理员可以通过WebDAV协议提供仓库访问,或者通过SVN命令行工具进行权限管理...

    svn服务端与客户端

    5. **Branch and Tag(分支与标签)**: 分支允许并行开发,而标签则用于创建特定版本的快照,通常用于发布里程碑或版本。 6. **Revision(版本)**: SVN 记录每次提交,每个提交都有一个唯一的修订号,可以追踪到...

    Svn相关学习资料以及视频

    - **Branch/Tag**:分支用于并行开发,标签用于标记特定版本,这两个概念是版本控制中的重要组成部分。 3. **SVN 版本管理**: - SVN 支持版本历史查看,你可以随时查看文件或目录的历史版本,回退到任何历史状态...

    smartsvn安装包

    除了标准的SVN指令(例如checkout、update、commit、merge等)之外,其亦提供tag与branch处理(无需要为了转换不同的tag或branch而去处理URL)、内建档案比对与冲突处理器(conflict solver)等。使用者无需安装额外的工具...

    svn插件(含安装说明)

    - **分支与合并(Branch & Merge)**:创建分支进行独立开发,然后将分支的改动合并回主分支,支持并行开发。 - **回滚(Revert)**:撤销对文件的本地改动,恢复到上一个版本的状态。 - **标签(Tag)**:创建版本...

    SVN Client.zip

    5. **分支(Branch)**:在SVN中,分支允许你从主干(Trunk)创建一个独立的开发线,这样可以进行风险较高的开发而不会影响主线。 6. **合并(Merge)**:分支完成后,你需要将分支上的更改合并回主干,以便所有...

    svn版本控制器

    - **svn branch** 和 **svn tag**:创建和操作分支和标签。 ### 4. SVN的协同工作流程 1. 开发者从仓库检出最新版本到本地。 2. 在本地进行开发和修改。 3. 定期更新工作副本以获取其他人的更改并解决冲突。 4. ...

    svn服务端、客户端、eclipse svn插件

    - ** Branch(分支)**和**Tag(标签)**:创建项目副本以进行独立开发或标记特定版本。 **Eclipse SVN插件** Eclipse是一款流行的开源集成开发环境(IDE),支持多种编程语言。为了在Eclipse中使用SVN,需要安装一...

    使用SVN进行版本控制 使用SVN1.2

    9. **分支与合并**:使用`svn copy`创建分支,使用`svn merge`将分支合并回主干。 #### 五、SVN的优势 1. **简单易用**:SVN具有直观的命令行界面,易于学习和上手。 2. **稳定性高**:SVN经过多年的实践验证,...

    svn1.9.3.27083

    在“SVN软件使用说明.docx”文档中,可能会详细解释如何安装和配置SVN,包括设置仓库、创建和管理工作副本、基本的命令操作(如`svn checkout`、`svn commit`、`svn update`、`svn merge`等)、解决冲突的步骤、分支...

    SVN常用功能详细说明

    - **操作步骤**:在需要创建分支或标签的文件夹上右键选择“Create Branch/Tag...”,然后指定新分支或标签的名称和位置。 #### 五、常见问题及解决方案 ##### 5.1 You must input the log message. - **产生原因...

    svn.zip安装包

    - **创建分支/标签**:在版本库中右键选择"SVN Create Branch/Tag",按照提示操作。 以上就是关于SVN的基本知识,包括其核心概念、功能、安装和使用。通过SVN,开发者可以更有效地进行团队协作,管理和维护项目...

Global site tag (gtag.js) - Google Analytics