Bazaar仅合并与主线共同的文件

时间:2009-07-03 10:10:31

标签: merge bazaar

我目前正在开发一个有两个阶段的项目,其中一个阶段将在以后删除。第2阶段的开发必须开始,但第1阶段的错误修复将在此期间进行。我想从第1阶段回购分支到第2阶段工作开始,但不再需要许多文件。我需要集成对第2阶段分支所做的任何更改,但我不想重复删除与我不相关的文件的麻烦,换句话说,我只想合并我们有共同文件的更改。

让我举一个例子,让我说我的第一阶段在这个回购中工作:

阶段1   - a.txt   - b.txt

然后我转到第2阶段,并删除a.txt,因为我不再需要它:

2阶段   - b.txt

现在假设作为第1阶段错误修复的一部分,a.txt和b.txt都会更新。我只关心b.txt,但是如果我合并我会得到: + N a.txt.OTHER  M b.txt

有没有办法用集市做这件事?

1 个答案:

答案 0 :(得分:3)

是的,如果您开始使用Daggy Fixes patternmirror),可以通过Bazaar实现。

因此,您需要记住第2阶段分支中的哪些文件,并在第1阶段和阶段2的单独分支中对它们进行修复,并将这些修复合并到两个阶段。

使用您的示例:

1)你需要修复文件a.txt中的问题 - 你可以直接在阶段1(b1)的原始分支中工作,你不应该再从这个分支合并到分支阶段2(b2)。

2)你只需修复文件b.txt的问题 - 你做了特殊的bug修复分支,尽可能接近修改版本,其中引入了b.txt的bug,你必须在修订之前从修订版创建bugfix分支分支阶段2已经开始。完成修复后,需要将bugfix分支合并到b1和b2分支中。

3)您需要修复与a.txt和b.txt相关的问题。在这种情况下,可能不需要这样的错误修复将其合并到b2中。在这种情况下,您可以使用上面的变体1。如果某些更改对于b2仍然很重要,则需要使用上面的变体2来启动b.txt的修复,然后将修复程序合并到b1和b2分支中并继续处理a.txt的修复。