进入一个特殊的问题,可以在一台MacBook Pro上重现(我们称之为坏的),一台Windows使用msysgit,而不是另一台MacBook Pro(我们称之为好的)。
重新设置了一个主人的功能分支,只有1次提交主人。功能分支有1个新提交,因此您的标准rebase工作流程。
在好的MacBook上,您可以使用标准git pull --rebase origin master
或git rebase -i origin/master
。一切顺利进入冲突阶段。 git status
将显示没有绿色冲突的文件,以及必须以红色解决的文件。您解决冲突并执行git rebase --continue
,再次检查历史记录/日志,一切都很干净。
在糟糕的MacBook和Windows机器上,我们开始使用rebase,但是当我们进入冲突解决步骤时,我们只看到需要解决冲突的文件,并且不需要解析的文件不存在< / strong>即可。如果我们解决冲突解决方案,新的重新定义的功能分支将丢失所有没有冲突的文件。
经过调查,我们注意到补丁未能应用。消息是:
the copy of the patch that failed is found in .git/rebase-apply/patch
因此,我们检查补丁文件,它确实有一个完整的更改列表。
我们尝试用git rerere forget .
来解决解析历史记录,认为开发者之前可能已经解决了一些冲突问题,但同样的事情发生了。
在好的MacBook上,这条消息没有发生,一切都很好。
我们正在调查git am
但未找到任何线索。错误消息中也没有其他提示。