git - 提交后,重置头部然后签出提交,git不会恢复删除的文件
问题描述
提交更改后,我跑git reset --hard HEAD^
错了,这导致我丢失了提交更改中的文件。
我正在尝试恢复这些文件。
当我这样做git reflog
时,它显示了先前的提交thatCommit
,所以我继续:
git checkout thatCommit
但是,不会恢复任何文件。
然后,当我键入git checkout
时,它会打印出所有已删除的文件:
D path/to/deletedFile1
D path/to/deletedFile2
M path/to/changedFile1
M path/to/changedFile2
我希望恢复已删除的文件和更改的文件,但path/to/deletedFile1
在我的 repo/branch 中看不到。
如何恢复这些文件?
解决方案
尝试
git checkout thatCommit -- .
(强制工作树重新初始化为该提交内容)
或者:
git reset --hard thatCommit
推荐阅读
- c++ - C++:我的程序的平均输出没有正确显示
- python - 有没有更简洁的方法来有条件地循环数据框中的行?
- python - 在 Python 中下采样变量并插入 NaN
- c# - 如何配置.net core angular azure AD 身份验证?
- postgresql - 在 postgresql 中查询历史表以查找给定日期的状态
- javascript - 将 if 语句添加到 var 变量中
- performance - 局域网传输速度明显不同
- html - 已发布的 Google 表格 - 如何删除悬停工具提示?
- python - Python程序将程序下载的文件保存为“文件”
- html - 在移动设备上使用时,文本被 Html 页面上的元素阻止