如何将修改后的文件恢复到特定提交哈希值(通过git log
和git diff
确定)的上一个版本?
假设你想要的提交哈希值为c5f567
:
git checkout c5f567 -- file1/to/restore file2/to/restore
git checkout手册提供了更多信息。
如果你想恢复到c5f567
之前的提交,请在其后附加~1
(其中1是你想要回退的提交次数,可以是任意数字):
git checkout c5f567~1 -- file1/to/restore file2/to/restore
顺便说一下,我一直对这个命令感到不适,因为它既用于普通事情(在分支之间切换),也用于非常规、具有破坏性的事情(丢弃工作目录中的更改)。
关于命令中--
的含义,请参阅In Git, what does --
(dash dash) mean?。
还有一个新的git restore
命令,专门设计用于恢复已修改的工作副本文件。如果你的git版本足够新,你可以使用此命令,但文档中带有警告:
标签:restore,git,--,重置,c5f567,特定,版本,checkout From: https://www.cnblogs.com/xiaomandujia/p/17753173.htmlTHIS COMMAND IS EXPERIMENTAL. THE BEHAVIOR MAY CHANGE.