曾几何时,我的项目中有一个文件,我现在希望能够得到它。
问题是:我不知道我什么时候删除它以及它在哪条路径上。
当它存在时,如何找到该文件的提交?
如果您不知道可以使用的确切路径
git log --all --full-history -- "**/thefile.*"
如果您知道文件所在的路径,则可以执行以下操作:
git log --all --full-history -- <path-to-file>
这应该显示涉及该文件的所有分支中的提交列表。然后,您可以找到所需文件的版本,并用…显示它
git show <SHA> -- <path-to-file>
或者使用以下命令将其还原到您的工作副本中:
git checkout <SHA>^ -- <path-to-file>
注意插入符号 ( ),它在识别之前^获取签出,因为在提交时文件被删除,我们需要查看前一次提交以获取已删除文件的内容<SHA>
^
<SHA>