维护开发分支,其中一个分支是另一个分支的子集

时间:2009-08-27 21:23:30

标签: git version-control mercurial branch subset

背景:我继承了一些MATLAB代码来分析我博士的数据。研究。为了帮助我更好地理解代码,我将代码削减到运行示例测试用例代码所需的最小文件子集。

问题:我想将此代码作为两个分支提交给版本控制系统,包含所有代码的master分支和包含minimal分支的{{1}}分支我精简的代码版本,能够在这些分支之间来回合并更改。我怎么能做到这一点?

我更愿意使用单个工作目录并在Git或Mercurial中命名分支,但我愿意接受其他建议。

  

编辑:我以为我在这些方面看到了之前的Stack Overflow问题,   我刚发现它:Pushing updates to a pruned Mercurial branch。在   对接受的答案的评论,是的   提到我的意思   试图做的是“狭隘的克隆”和那个   对于Git来说,这是一项正在进行的工作   和Mercurial。

1 个答案:

答案 0 :(得分:4)

git和mercurial都可以正常工作。创建主分支,然后将其复制到最小分支,然后剥离最小分支,使其看起来像您已有的实现(删除所有额外文件,复制已更改的文件)。

从那时起,在分支之间使用常规合并命令。最好从最小分支到主分支合并。合并另一种方式'更有可能让你抱怨合并失败(有冲突),因为一些文件适用于已删除的文件/删除的功能。