手册页说 log 显示提交日志,reflog 管理 reflog 信息。 reflog 信息到底是什么?它有哪些日志没有的信息?日志看起来更详细。
git log
显示当前的 HEAD 及其祖先。也就是说,它打印提交 HEAD 指向的提交,然后打印其父级、其父级,依此类推。它通过递归查找每个提交的父级来遍历存储库的祖先。
(实际上,某些提交有多个父提交。要查看更具代表性的日志,请使用如下命令git log --oneline --graph --decorate
.)
git reflog
根本没有穿越 HEAD 的血统。 reflog 是 HEAD 指向的提交的有序列表:它是您的存储库的撤消历史记录。引用日志不是存储库本身的一部分(它与提交本身分开存储),并且不包含在推送、获取或克隆中;这纯粹是本地的。
另外:了解引用日志意味着一旦提交,您就不会真正丢失存储库中的数据。如果您不小心重置到较旧的提交,或错误地变基,或任何其他直观地“删除”提交的操作,您可以使用引用日志来查看您之前的位置,然后git reset --hard
返回到该引用以恢复之前的状态。请记住,引用不仅意味着提交,还意味着其背后的整个历史。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)