误执行git reset -- myfile.dart与git checkout -- myfile.dart后如何恢复更改?
恢复被
git reset --和git checkout --丢弃的文件更改 检查Git对象数据库
执行git fsck --lost-found命令,Git会扫描所有未被仓库引用的对象,并将它们存放到.git/lost-found/目录下。进入该目录后,用git show <对象哈希值>逐一查看文件内容,找到匹配myfile.dart的版本后,将内容复制回原文件即可。查看编辑器本地历史
多数代码编辑器会自动保留文件的修改历史,和Git操作无关:- VS Code:右键目标文件,选择「查看本地历史」,或通过「文件>首选项>设置」搜索「local history」开启相关功能后查看
- IntelliJ/Android Studio:右键目标文件,选择「Local History>Show History」,在弹窗中找到丢失的修改版本
使用系统文件恢复工具
- Windows:右键
myfile.dart,选择「属性>以前的版本」,如果系统开启了文件历史或系统还原,可从备份中恢复旧版本 - Mac:打开Time Machine,找到对应文件的历史版本进行恢复
- Linux:若使用ext系列文件系统,可尝试
extundelete等工具扫描磁盘恢复被覆盖的文件
- Windows:右键
内容的提问来源于stack exchange,提问作者Luke Pighetti
相关产品推荐
相关产品推荐

