首页 > 解决方案 > 在 reflog 中,如何知道重置是软、混合还是硬重置?

问题描述

我做了一个提交,然后在我的存储库中进行了混合重置。又处理了几个文件,但没有提交。一天后,我的更改消失了(可能是团队中的其他人)。所以我检查了我的 reflog,它显示了这一点:

82da9af HEAD@{0}: reset: moving to HEAD
82da9af HEAD@{1}: reset: moving to HEAD
82da9af HEAD@{2}: reset: moving to HEAD~1
e0e4ee0 HEAD@{3}: commit: *badcommit*

所以,这里的重点问题是:我怎么知道我是否进行了混合重置,或者可能在不知不觉中进行了艰难的重置?

额外的问题:为什么它出现了 3 次?(昨天只显示了其中一个)。通过 SHA,我猜它们一定是一样的。

标签: git

解决方案


所以,这里的重点问题是:我怎么知道我是否进行了混合重置,或者可能在不知不觉中进行了艰难的重置?

此信息不会保存在任何地方。如果 reflog 消息包含git reset参数可能会很好,但事实并非如此。

额外的问题:为什么它出现了 3 次?

有人或某事又运行了几次。请注意,一些较高级别的 Git 命令,例如git stash,使用较低级别的 Git 命令,例如git reset,因此会产生大量 reflog 噪音。


推荐阅读