我目前正在使用Git将应用程序部署到DigitalOcean VPS服务器。如果部署或应用程序出现问题,则由于新源代码中的错误而损坏。如何回滚到以前的git提交?
我发现下面的链接很有用,但是我很困惑我应该使用哪个命令。
How to revert Git repository to a previous commit?
我想要达到的目标:
我很少读到关于git checkout
的答案,它需要提交散列i.e. 0d1d7fc32
。但是,这种方法需要一些额外的步骤,对于自动脚本可能没有用。
提前谢谢。
发布于 2014-05-21 18:20:21
如果您想回滚回上一次提交,只需使用:git checkout HEAD~
HEAD
引用当前提交
HEAD~
引用上一次提交
HEAD~2
在上一次提交之前引用提交
要重新检查最近的提交,请使用git checkout <remote> <branch>
,可能是git checkout origin master
。这将有效地逆转原来的命令。
发布于 2014-05-21 18:22:08
好的,如果您想放弃上一次提交后的所有工作,命令如下:
git reset --hard HEAD~1
~1告诉git回滚到上一次提交。~2是之前的提交,以此类推(~3,~4,…)。
这样做不会影响您的GitHub repos,除非您推动修改。
要使此命令自动化,您可以编写一个脚本,在存储库文件夹上执行此命令。
PS:有很多不同的方法可以做到这一点。你应该选择你最舒服的选择。
https://stackoverflow.com/questions/23796666
复制