hg的分支反向合并

可以看我上一篇文章,并行分支全部变为节点:

http://www.cnblogs.com/hont/p/4224162.html

这个方法得到一个干净的版本库,但还有个问题。比如精简版里修了bug,想合并到正式版里去,应该如何合并?

这个问题在并行分支上是个麻烦事,因为精简版作为分支合并回去肯定会带有不想要的内容。很多东西都帮你误删掉。而hg检测出的改变,只是针对上个版本号的改变内容。而不是针对不同分支的改变内容。所以也无法剔除

那么来看看节点化的策略:

A节点 正式版

B节点 精简版

他们都放置于总服务器上,现在有一个开发团队针对B节点进行维护和更新



开发者C:

C节点 目标仓库 B节点

现在开发者C修掉了一个B节点的BUG,而这个BUG在A节点同样存在。C创建了一个fix分支,把修改bug的改动放过去,推到B节点

C再clone一下B节点仓库,因为B节点仓库的改动信息是针对A节点的,HG可以显示全部针对A节点的改动

C在B节点里把不想要的东西剥离(hg功能)出来,然后推送到A节点,完成

时间: 2024-10-27 01:58:20

hg的分支反向合并的相关文章

SVN 分支及合并的介绍和实践---命令行

写在前面 一些相关的概念和原理 进行分支开发的最佳实践 合并的分类 在 Eclipse 中进行合并操作 相关资源 写在前面 本文是由演讲整理而来的,介绍了 SVN 分支与合并的概念.流程和一些实际操作方法,适合对版本控制有基本认识然后想了解 SVN 分支与合并的使用方法的读者. 对应 SVN 版本最低为 1.5,因为分支.合并的很多功能都是 1.5(release notes ) 才加进来的. 一些相关的概念和原理 分支(branch)和标记(tag)对于 SVN 来说就只是副本(copy),没

git分支的合并

http://gitbook.liuhui998.com/3_3.html http://gitbook.liuhui998.com/5_3.html 一.如何分支的合并 在git中,可以使用git merge 和git rebase两个命令来进行分支的合并. git merge 和git rebase在大体上都差不多,下文主要以git merge来例来讲解分支的合并流程. 如果你想了解分支合并的更多内容,请阅读<git merge简介>,<git rebase简介(基本篇)>和&

SVN教程——分支与合并

作者:zhanhailiang 日期:2014-10-17 分支的应用场景 总结一句就是方便并行开发. Subversion has commands to help you maintain parallel branches of your files and directories. It allows you to create branches by copying your data, and remembers that the copies are related to one

详细说明svn分支与合并---命令行

一,svn分支与合并有什么用? 作程序的,对svn在熟悉不过了,但对svn分支熟悉的,我想并不多.因为一般情况下,是用不着svn分支的,其实也没有那个必要.下面我例举几个需要用到svn分支的情况: 1,比较大的项目.比较大的项目,一般情况下会分成几个阶段来完.好比什么五年计划.到了某个阶段时,我建立一个分支,当个备份.万一将来开发下个阶段东西的时候,出现致命错误的时候,我还能把这个分支拿出来接着用. 2,项目要开发新的东西,但是又不想和主干冲突,建立一个分支,单独做为一个开发分支.这样做也是为了

svn branch and merge(svn切换分支和合并)详解

下文的实践主要是参考了TortoiseSVN的帮助文档和Subversion的在线文档,Subversion的在线文档:http://svnbook.red-bean.com/en/1.5/svn-book.html 先说说什么是branch.按照Subversion的说法,一个branch是某个development line(通常是主线也即trunk)的一个拷贝,见下图: branch存在的意义在于,在不干扰trunk的情况下,和trunk并行开发,待开发结束后合并回trunk中,在bran

SVN分支的合并和同步

使用svn几年了,一直对分支和合并敬而远之,一来是因为分支的管理不该我操心,二来即使涉及到分支的管理,也不敢贸然使用合并功能,生怕合并出了问题对团队造成不良影响,最主要的原因是,自己对分支的目的和合并的方法不甚了解,这才是硬伤. 最近由于适配机型的需要(本人从事手机客户端的开发),需要经常接触分支和合并两项工作,突然发现这玩意整不明白很难开展工作,遂这两天着重研究了一下,有点收获,怕以后忘了,故趁着余温尚在赶紧写下来,好记性不如烂笔头嘛.下文的实践主要是参考了TortoiseSVN的帮助文档和S

tortisegit 创建分支和合并分支

第一步:创建本地分支 点击右键选择TortoiseGit,选择Create Branch-,在Branch框中填写新分支的名称(若选中"switch to new branch"则直接转到新分支上,省去第二步),点击OK按钮: 第二步:通过"Switch/Checkout"切换到新创建的分支上,点击OK: 第三步:在新分支下执行PUSH操作,在对话框中保持远程分支为空白,点击OK,则将在远程创建了新的分支(在PUSH的时候远程服务器发现远程没有该分支,此时会自动创建

git使用笔记(二)分支与合并

By francis_hao    Nov 18,2016 查看分支,* 表示当前所在分支 $ git branch 查看分支和最后一次提交记录 $ git branch -v 新建分支 $ git branch alphabet 切换分支 $ git checkout alphabet 新建和切换可以合并为一步操作 $ git checkout -b digital 删除一个分支,注意:不能删除当前所在分支 $ git branch -d for_delete 查看所有分支的提交记录 $ gi

SVN使用教程之-分支/标记 合并 subeclipse

首先说下为什么我们需要用到分支-合并.比如项目demo下有两个小组,svn下有一个trunk版.由于客户需求突然变化,导致项目需要做较大改动,此时项目组决定由小组1继续完成原来正进行到一半的工作[某个模块],小组2进行新需求的开发.那么此时,我们就可以为小组2建立一个分支,分支其实就是trunk版[主干线]的一个copy版,不过分支也是具有版本控制功能的,而且是和主干线相互独立的,当然,到最后我们可以通过[合并]功能,将分支合并到trunk上来,从而最后合并为一个项目. 下面是在eclipse下