一场无用功的merge
一:背景(开发工具Intellij IDE)
项目中有develop 和 release 两个分支, 在develop 开发新需求,release 分支是在提测的时候来合并develop代码供测试使用,没等到提测时,提前给merge 了。
二:使用git reflog 查看所有HEAD历史 (操作包含commit(merge)、reset、chekcout、pull、renamed等),部分内容如下:
3444841f HEAD@{25}: reset: moving to 3444841f47251161d65d815cde72d8ffaccd87c7
66afa884 HEAD@{26}: checkout: moving from develop to release
3444841f HEAD@{27}: reset: moving to 3444841f47251161d65d815cde72d8ffaccd87c7
6b7503b8 (HEAD -> release-333, recover-branch) HEAD@{28}: checkout: moving from release to develop
66afa884 HEAD@{29}: merge develop: Merge made by the 'recursive' strategy.
541b298f HEAD@{30}: checkout: moving from develop to release
6b7503b8 (HEAD -> release-333, recover-branch) HEAD@{31}: commit: <E6><A