执行git reset --hard HEAD^后如何恢复未暂存的已删除更改?
恢复
git reset --hard HEAD^丢失的未暂存更改 - 执行
git fsck --lost-found,该命令会扫描Git对象库,将所有未被引用的对象(包括你丢失的未暂存更改)提取到项目根目录的.git/lost-found/文件夹中。 - 进入
.git/lost-found/other目录,这里存放着所有找回的零散内容。使用cat命令或文本编辑器逐个查看文件内容,定位到你丢失的未暂存更改。 - 找到目标内容后,直接将内容复制到项目对应的文件中;也可以通过对象哈希值查看内容并导出,比如执行
git show <对象哈希值> > 目标文件路径,把内容写入指定文件。
注意:如果距离执行
git reset --hard HEAD^已经过了较长时间,Git可能已经自动垃圾回收了这些临时对象,此时将无法恢复丢失的内容,建议尽快操作。
内容的提问来源于stack exchange,提问作者user11555842
相关产品推荐
相关产品推荐

