git commit 丢失 踩坑

已经帮3个团队排查过git commit记录丢失的事情,虽然可以通过 git log –online 结合git reset –hard 使用二分法定位出是哪个commit导致的记录丢失,但一直未找到复现问题的方法。
网上查询,发现是如果场景:
user2 git pull远端上的最新代码,假设合并到本地当前分支,有100个文件有更新
user2实际自己只改了10个文件,为了谨慎起见,他只勾选了自己改动的10个文件进行提交(假设这10个文件跟上面的100个文件没有重合)。

结果:
这次提交导致了远端原来100个文件的提交都丢失,而且在文件的commit记录中不会体现出来,很坑。

相关分析文章:
git merge使用不当引发的代码丢失血案
原作者: git merge使用不当引发的代码丢失血案

Leave a Reply

Your email address will not be published.