Git merge的行为异常,可能是由于意外地合并/还原了过去的数据
几个月前,一个功能分支,Git merge的行为异常,可能是由于意外地合并/还原了过去的数据,git,Git,几个月前,一个功能分支,featureurea意外地合并到另一个功能分支,featureB。已执行还原,删除意外合并导致的文件 昨天,featureA被合并到master。要保持featureB最新,我每周将master合并到其中。今天,我正在将master合并到featureB中,我注意到了一些奇怪的事情。几个月前意外合并到featureB中的文件在合并时会被自动删除或错误修改 在今天将featureB合并到featureB中时,几个月前意外合并的featureA文件的状态似乎优先 为什么会发
featureurea
意外地合并到另一个功能分支,featureB
。已执行还原,删除意外合并导致的文件
昨天,featureA
被合并到master
。要保持featureB
最新,我每周将master
合并到其中。今天,我正在将master
合并到featureB
中,我注意到了一些奇怪的事情。几个月前意外合并到featureB
中的文件在合并时会被自动删除或错误修改
在今天将featureB
合并到featureB中时,几个月前意外合并的featureA
文件的状态似乎优先
为什么会发生这种情况?如何解决这个问题?我最近回答了一个类似的问题
这里不需要详细说明,另一个答案非常详细
其长短不一之处在于,您已经合并到一个revert-commit中,它否定了您所在的分支。您需要“还原还原”。还原将创建一个以“还原”开头的提交消息。找到该提交并在该提交上运行git revert
。这会解决你的问题。是的。就这样。非常感谢您,您救了我的命。我注意到,在恢复恢复后,它似乎正在影响其他分支。例如,featureC现在显示featureB中的内容。与我在回答中所说的相反,有可能FeatureUrea被意外地合并到master中,然后featureB是从该master中创建的。如果是这样的话,恢复featureB上的恢复是否也会影响featureC?恢复只是一个从提交或一组提交中撤消更改的提交。还原还原是一回事,只是目标是另一个还原。还原的效果将在提交合并到的任何分支上看到。假设自还原以来没有任何重定基/修改或樱桃拾取-运行命令git branch--contains
其中SHA1是还原提交,然后对还原的SHA1再次执行此操作。第一个列表中的任何分支都具有原始还原。第二个列表中的任何分支都具有恢复功能。列表一中可能有一些不在列表二中的,这些仍然缺少混响恢复。清单二上真的不应该有任何不在清单一上的东西。如果存在,则在还原-还原后合并中会发生一些奇怪的情况。事实证明,原始还原已合并到featureC分支中。引起了一点恐慌,但现在一切都好了。再次感谢!