2017-08-09 54 views
1

设置:GIT中避免空合并提交于长寿命的特性分支

  • 所述基础产品 - 流落主分支
  • 基础产品的与定制用于客户端的叉 - 生活在一个单独的功能分支

现在,所有在master中的提交应该合并到功能分支。功能部门提供了自定义基本产品/添加新功能的提交。

有没有办法避免空合并提交时合并主功能分支? 合并提交正在污染历史,因为我们每天合并到特征分支几次以获取从主控到特征分支的新更改。

注意:由于功能分支包含大量的主控以外的提交,因此rebase将不起作用,并且会导致需要每次解决的冲突。

回答

1

几个解决方案浮现在脑海中:

  1. 别这么大肆宣传关于有一个“好”混帐历史。合并是历史的一部分。你不想看到他们? git log --no-merges。 Woop,清洁的历史,以及所有真正的合并好处。

  • 使用变基和git rerere所以不能解决同一冲突两次。我不提倡这个解决方案,因为由于每一个历史重写功能都会失效,所以rebase会丢失关于提交的原始上下文的信息。 More informations about rerere here
  • +0

    标记为正确,因为它确认没有合理的方法可以实现这一点,并且可以在历史中使用它。在IDE中查看日志时,无法指定'git log --no-merges'(我正在使用Intellij)。 'rerere'不是一种选择,因为应该保留'历史' –

    相关问题