[英]Git branch edits lost after checkout file on master branch
有什么想法如何恢复我在下面的步骤2中所做的更改?
如果更改后在该文件上运行git add
,则该内容已在.git
注册-它存在于此并且可以检索。 尽管不容易-您必须首先找到Git创建的所有最新对象:
find .git/objects/ -type f -printf "%T+\t%p\n" | sort
这些按修改日期排序,因此最后一个是最近创建的。 继续前进-遍历每个对象并运行以下命令,直到找到您的内容:
git cat-file -p [40 letter hash including 2-letter directory name]
其中一些对象不是文件,而是树(目录)并提交,请跳过它们。
如果您没有运行 git add
那么Git根本不了解该文件,因此您不能要求Git取回文件。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.