如何在特定的提交哈希(我通过确定)将修改后的文件恢复到之前的版本git log https://git-scm.com/docs/git-log and git diff https://git-scm.com/docs/git-diff)?
假设您想要的提交的哈希值是c5f567
:
git checkout c5f567 -- file1/to/restore file2/to/restore
The git 结账 https://git-scm.com/docs/git-checkout手册页提供了更多信息。
如果你想恢复到之前的提交c5f567
, 附加~1
(其中 1 是您要返回的提交数量,可以是任何值):
git checkout c5f567~1 -- file1/to/restore file2/to/restore
附带说明一下,我一直对这个命令感到不舒服,因为它既用于普通的事情(在分支之间进行更改),也用于不寻常的破坏性事情(丢弃工作目录中的更改)。
对于的意义--
在命令中,参考在 Git 中,什么是--(破折号)是什么意思? https://stackoverflow.com/questions/22750028/in-git-what-does-dash-dash-mean
还有一个新的git restore https://git-scm.com/docs/git-restore专门用于恢复已修改的工作副本文件的命令。如果你的 git 足够新,你可以使用这个命令,但文档附带一个警告:
该命令是实验性的。行为可能会改变。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)