我最近遇到了一个问题。其中一位开发人员在分支机构中进行了一些更改。当他检查分支日志(git checkout branch; git log
)时,提交(例如, abc )显示但是当他检查日志中的文件(git log <file_name>
)时,作为给定提交( abc )的一部分,关联的提交( abc )未显示;相反,旧的提交ID(例如, xyz )就在那里。
当问题出现时,我尝试使用git log --follow <file_name>
检查文件的完整历史记录,以确保文件是否已重命名为其当前名称。 git log --follow <file_name>
的输出实际上显示了git log <file_name>
命令输出中缺少的提交ID( abc )。在询问开发人员文件是否已重命名时,我发现已经为该文件执行了 no 重命名。这令人困惑,我被困住了,因为我无法弄清楚发生了什么。后来,事实证明,另一个开发人员在推送他的代码时遇到了合并冲突,而不是解决它,他只是做了一个git reset .
并且HEAD被转移了。
问题1)我有没有办法弄清楚其他开发人员在他的机器上执行的git reset
命令?仅供参考,我有管理员访问Git。