git verere - git工作流,用于避免日志中的大量合并噪音



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

在上面的例子中,我们对3.0进行了最后一分钟的修改,需要合并到master中。如果我们不经常合并,我们的master就会过时,没有最近的变化。如果我们进行合并,我们就会有从3.0master的合并日志。

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

是否有一种方法可以使master保持最新而不产生所有丑陋的合并噪音?我理解rerere的用法吗?

rerere代表"Reuse Recorded Resolutions"。它所做的只是通过记住您过去所做的决定,使您的合并/重置更容易。当它们真的发生时,它并没有减少它们的噪音;它所允许的是在不进行合并的情况下进行更长时间(因为您可以"预飞行"合并而不推送结果)。

为什么"有日志的合并"是一个问题?您可以使用git log --no-merges来显示没有合并提交的日志。

你的选项基本上是这样的:

  • 合并更少,这将使合并,当你需要他们,更困难
  • 更频繁地合并,并在日志中保存合并提交
  • 使用重基,并处理公共存储库上的问题
  • 使用樱桃采摘,这意味着分支不会共享历史

最新更新