2

我们目前有一个工作流程,其中master有更长期的功能发布分支和编号的分支,例如3.0下周左右发布的版本。

在上面的例子中,我们将最后一分钟的更改推送到3.0需要合并到 master 中。如果我们不经常合并,我们最终会master过时而没有最近的更改。如果我们边走边合并,我们会得到充满从3.0to合并的日志master

看似神奇的命令git-rerere似乎可以解决这个问题,但只针对需要更新的本地主题分支。换句话说,如果3.0只在一个人的机器上而不是公开的,它就可以工作。

有没有办法让 master 保持最新而没有所有丑陋的合并噪音?我了解 rerere 的用法吗?

4

1 回答 1

2

rerere代表“重用记录的决议”。它所做的只是通过记住您过去做出的决定来使您的合并/变基更容易。当它们实际发生时,它并没有让它们变得不那么嘈杂。它确实允许在不进行合并的情况下运行更长时间(因为您可以“预飞行”合并而不是推送结果)。

为什么“有充满合并的日志”是一个问题?您可以使用git log --no-merges在没有合并提交的情况下显示日志。

您的选择基本上是这样的:

  • 减少合并的频率,这将使合并在您确实需要它们时变得更加困难
  • 更频繁地合并并在日志中使用合并提交
  • 使用变基,并处理公共存储库所涉及的问题
  • 使用樱桃采摘,这意味着分支不会共享历史
于 2013-01-14T18:11:34.877 回答