为什么重新合并分支会忽略一些变化?

时间:2012-04-13 01:25:56

标签: git merge

3 个答案:

答案 0 :(得分:1)

答案 1 :(得分:0)

to-be-QAd 分支仍然包含来自commit2和其他一些不正确文件的更改,因为您从第一次带来功能A时没有撤消合并

在进行修复后第二次合并 feature-A 之前,我会在 to-be-QAd 分支上运行git reset --hard,其中是

上第一次合并之前提交的id

修改<!/强>

如果其他开发人员在初始合并后将提交的功能设置为QAd,则可能会出现问题。如果这样做,请注意你将要退出的提交。

答案 2 :(得分:0)

当你做了&#39; git reset&#39;在功能A分支上,您返回commit-1然后添加了commit-3。但是在to-be-QAd分支上,你仍然有commit-1和commit-2。然后,当你将feature-A合并到to-be-QAd时,你会得到类似的东西:commit-1,comment-2和commit-3-merged。因此,可能来自commit-2的东西仍然存在。您可以通过以下几种方式解决问题:

  1. 做一个&#39; git reset&#39;在feature-A和to-be-QAd上,将commit-3添加到feature-A,合并到to-be-QAd
  2. 做一个&#39; git revert&#39;在feature-A上添加一个un-commit commit-2的提交,添加commit-3 - 在此之后你的feature-A分支看起来像:commit-1,commit-2,commit-2-undo,commit-3。然后,合并到to-be-QAd,它将获得commit-2-undo和commit-3