在 git 中,如何将文件恢复到 3 次提交前?

Posted

技术标签:

【中文标题】在 git 中,如何将文件恢复到 3 次提交前?【英文标题】:In git, how do you revert a file back to 3 commits ago? 【发布时间】:2014-01-26 22:43:09 【问题描述】:

我在 git 中更改了一个图像文件,它是 2 次提交前的。我如何回到之前的 2 个提交?

通过命令行使用最少的命令还原此文件的最简单方法是什么?

【问题讨论】:

Revert multiple git commits的可能重复 【参考方案1】:

只需查看该文件的旧版本:

git checkout HEAD~2 -- path/to/file

或更明确:

git checkout commit-id -- path/to/file

【讨论】:

HEAD~2 是什么意思? HEAD 是当前签出的提交,HEAD~n 是之前的第 nth 个提交。所以这是两次提交前的版本。 -- 用于告诉 Git 将剩余的参数视为文件路径。 如果我遗漏了 -- 会发生什么:git checkout path/to/file 它可能会工作,但如果路径是 Git 可能能够解释为命令参数的东西,你会得到一个错误。所以安全的方法是简单地包含--

以上是关于在 git 中,如何将文件恢复到 3 次提交前?的主要内容,如果未能解决你的问题,请参考以下文章

如何将我的 git 分支恢复到指定的提交?

Git:将单个文件还原为其最后一次提交[重复]

Atom编辑器入门到精通 Git支持

Git:如何撤销已经提交的代码

Git 修改最后一次提交,删除文件,重命名文件

如何解决还原提交冲突