共计 665 个字符,预计需要花费 2 分钟才能阅读完成。
在一次性能开发实现后,筹备将 feature 分支合并到 develop 分支,提 pr 并将 feature 分支合并到 develop 分支时,查看 diff 时发现异常。在筹备合并前,曾经将 develop 分支 merge 到 feature 分支,并且批改的局部只在一个专门的 moduleA 里,实践上 diff 的后果中应该只蕴含批改的 moduleA 的内容,然而却呈现了大量其余 moduleB 的批改,并且奇怪的是甚至呈现了旧的操作记录笼罩新的操作记录的状况,也就是上次从 develop 分支 merge 到 feature 分支的的 moduleB 的旧记录把本次 develop 上 moduleB 的新记录笼罩了。
调试过程,先找到最近的一次失常的 commit_0,而后一一查看从 commit_0 到最近的 commit_last 的所有 commit,定位到两次 commit 有问题,一次是抉择了提交时主动格式化,将 moduleB 的代码格式化了,这次之前尝试 revert,然而操作时理论只 revert 了本地分支,在 push 到 remote 时,再次和原分支合并了,导致 revert 失败。另一次 commit,在操作记录里显示将旧的全副从新提交了一次,尽管代码没有批改,然而代码的工夫戳全副批改了,这也就导致了在把 develop 的新操作 merge 到 feature 分支时,新操作反而被旧操作笼罩的景象。
修复过程,将 feature 分支 revert 到失常的 commit_0,并抉择 soft revert,也就是保留了所有的 commit,而后将 moduleB 的批改全副 revert,而后从新提交。问题解决!