一尘不染

如何在项目提交历史中找到已删除的文件?

javascript

曾几何时,我的项目中有一个文件,我现在希望能够得到它。

问题是:我不知道我什么时候删除它以及它在哪条路径上。

当它存在时,如何找到该文件的提交?


阅读 149

收藏
2022-02-22

共1个答案

一尘不染

如果您不知道可以使用的确切路径

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>

2022-02-22