合并git分支以使中间结果可供其他人使用

时间:2019-05-09 12:07:41

标签: git

我经常面临同样的问题,但无法决定什么是好的做法。

假设我们是几个开发人员在 dev 分支中添加功能(具有分支 feature_1 feature_2 ,...),准备好将它们合并到 dev 中。 (所有这些分支都只是出于备份原因而被推送到 origin 。)现在,我已经实现了 feature_1 的基本版本,但我还是会做得更好,但是它已经在工作,其他人希望在我的基础上重新开发他们的功能。

你会做什么?

  1. 让他们将 feature_x 基于 feature_1 。这对我来说听起来很糟糕,因为以后我可能会将 feature_1 合并到 dev 中(可能创建合并提交),然后我不确定他们想要什么时会发生什么将其 feature_x 合并到 dev 中(届时很有可能还会有其他提交)。
  2. feature_1 合并到 dev 中,以便他们可以在 dev 上重新构建他们的 feature_x 。但是,该怎么做才能继续处理 feature_1
    1. 仅继续研究 feature_1 ?我不确定这是正确的方法,因为它已被合并(尤其是关于git历史记录的整洁度)。
    2. 删除 feature_1 并从那里重新创建一个具有相同名称的新分支?我想不出一个比我已经拥有的更好的分支名称:这只是延续。
    3. 创建一个新分支 feature_1_b 或类似的名称。对我来说这听起来很混乱,没有人会知道我对“ _b ”的意思。

谢谢。

1 个答案:

答案 0 :(得分:0)

我会按照您的第二选择来寻求帮助:

如果feature_1的一部分已经准备就绪(并且准备就绪,我特别是表示它不会破坏应用程序),那么我将在开发过程中将其合并(遵循“经常提交,经常合并”工作流),因此任何从事开发工作的人都可以使用它。

然后,feature_1合并后,我将其重新建立在develop的基础上(这实际上与删除分支feature_1并在{ {1}}),然后从那里开始。

关于您的选择1,我不建议让人们将他们的工作建立在Feature分支的顶部,因为您可能想对分支进行重新设计,对提交进行重新排序,对其进行修改等等。我认为别人的要素分支(是否按下)是私有的并且可能不稳定,并且不会触及它,也不会基于它进行工作。