如何将一个变更从旧分支合并到新分支?

Phl*_*lip 3 git

场景:

  • master分支中的dev
  • 将master分支到Feature分支中,然后将其中一个Feature发送给质量检查人员
  • 掌握更多
  • git checkout Feature
  • 做一点修复
  • 将具有该修复程序的功能发送回质量检查
  • git checkout master
  • git merge Feature

想象一下,当Git说“好吧,您希望master看起来像现在Fix”,并且抛弃了我所有的“更多开发”更改时,我会感到惊讶。我需要它仅应用与两个分支分支时不同的唯一主题标签。

如何执行这种简单而明显的方案?噩梦将是我在master上进行相同的更改,然后在相同的更改进入“生产”分支时遇到无关紧要的合并冲突...

Von*_*onC 5

如果没有人依赖您的功能分支(即,如果没有人从您推入的帽子分支中撤出),那么我可以肯定的是,将其基于以下位置master

git checkout master
# make sure master is up-todate
git pull

# rebase my feature branch on top of master
git checkout myFeatureBranch
git rebase origin/master
Run Code Online (Sandbox Code Playgroud)

这样可以在master上重放您的修改,并且您可以在功能分支中本地解决任何冲突。

然后合并回主节点是一个不重要的快进操作

git checkout master
git merge myFeatureBranch
Run Code Online (Sandbox Code Playgroud)

最后,您可以执行以下操作master:上游存储库将再次接受这些更改作为快速合并(您仅在之上添加新的提交origin/master