如何将特定的git提交从一个分支合并到另一个分支?

时间:2016-01-25 14:01:45

标签: git merge rebase cherry-pick hotfix

美好的一天,

以下是这种情况:

  • 我有一个与生产相似的主分支。
  • 我有一个开发分支,其中包含所有经过测试的工作,并准备在下一个版本中部署。
  • 我基于开发分支在功能分支上开发新功能。
  • 有时候我必须修改master分支,因此我创建了修补程序分支。

当我处理功能分支时,如果需要太长时间或者已将重要更新推送到开发分支,我们会将develop分支合并到我们的功能分支中,以便修复功能分支上可能存在的冲突。

当我必须修改主分支时,我从它创建一个子分支并在此修补程序分支上工作,然后将其合并回主分支并开发分支。

问题有时候,我必须突然部署一个功能分支而不在开发分支上部署什么(即使它已经过测试和批准,它可能不是正确的时间来部署它。)

为此,我只能想到一种安全的方法:从master创建一个修补程序分支,从功能分支创建一个cherry-pick提交,然后将修补程序分支合并回master并开发。

我不能将功能分支合并到修补程序分支中,因为它可能包含来自开发的提交(通过从开发创建功能分支,或通过开发合并到功能分支(保持)它是最新的))。

我很确定有更好的方法可以继续,但我无法掌握这样做的方法。也许git rebase具有交互模式?但如果工作正常,我就无法做到。

总结:如何使用可能包含不需要的提交的现有功能分支修补主分支。

欢迎任何想法。

问候。

0 个答案:

没有答案