在 Git 项目的提交历史记录中查找已删除的文件
本文讨论在项目的提交历史记录中查找已删除的文件。 当您想要恢复您在项目中删除的文件时,这很方便。
事不宜迟,让我们直接进入。
Git 中查找和恢复已删除文件的步骤
在我们删除了一个文件,想不起来文件路径的场景下,我们可以执行下面的命令来查找路径。
$ git log --all --full-history -- "<OurFile>"
上面的命令将输出我们提交历史中的所有提交,其中包含名称与我们的模式 <OurFile>
匹配的文件。 当然,您必须将 <OurFile>
替换为您文件的正确名称。
输出可以帮助我们使用提交哈希值获取文件路径,如下所示。
$ git show --pretty="" --name-only <sha1-commit-hash>
现在我们有了文件的路径。 但是,我们想要恢复文件的特定版本。
我们该怎么做?
如下所示,我们必须获取更改文件的提交。
$ git log --all --full-history -- <path-to-file>
要获得我们想要的版本,我们将运行:
$ git show <sha1-commit-hash> -- <path-to-file>
将文件恢复到工作副本
如下图所示,我们将使用 git checkout 命令来恢复我们的文件。
$ git checkout <sha1-commit-hash>^ -- <path-to-file>
我们添加了插入符号 ^
以指示 Git 从上一次提交中获取文件版本。 这确保我们在文件被删除时获得文件的先前内容。
简而言之,Git 版本控制系统对丢失用户数据非常严格。 如果您在项目中删除了一个文件并且您需要恢复它,请按照我们上面概述的步骤进行操作。
您不需要知道文件的完整路径。
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布,任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站。本站所有源码与软件均为原作者提供,仅供学习和研究使用。如您对本站的相关版权有任何异议,或者认为侵犯了您的合法权益,请及时通知我们处理。