主分支更改后合并开发分支(已提交)

时间:2019-10-24 14:34:58

标签: git github git-merge branching-and-merging

我已经在development分支上工作了一段时间,与此同时,另一位开发人员已经在master分支上进行了更改(向主提交了几次提交)。

master分支现在包含我的development分支中没有的内容。

我可以合并development分支而不影响master分支中的新提交吗?也就是说,是否不覆盖master中的任何新作品?

处理此问题的最佳方法是什么?

3 个答案:

答案 0 :(得分:2)

假设你们正在研究项目的各个方面(并取决于您的IDE),通常可以指定要提交/推送的文件。我建议先从master 中撤出,然后复制您的更改并提交。然后创建一个拉取请求并合并分支。使用git时最好始终放心,即使需要更多步骤。

答案 1 :(得分:2)

不,git中合并的原理是可加的,您不能通过合并“覆盖”提交。

初始情况

A---B---C---D <<< master
     \
      E---F <<< development <<< HEAD

您的同事已提交CD。现在,将development合并到master中。

git checkout master
git merge development

A---B---C---D---G <<< development, master <<< HEAD
     \         /
      E-------F

这时,可以从任一分支访问development分支上的提交,但是CD的提交仍在此处。

答案 2 :(得分:0)

我讨厌手工合并代码。我更喜欢先将master合并到我的dev分支中。这样,如果我搞砸了,结果代码将在我的dev分支中,而不是在master中。这还具有使代码审阅者(在我的情况下在合并之前发生)更容易的优点。

例如:

A---B---C---D---G <<< development, master <<< HEAD
 \          \   /
  -----E------F