我们在GitHub中有两个分支,master和development - master总是包含生产代码。由于我们正在将代码从主分支转移到生产 - 如果生产中发生任何故障,我们希望使用GitHub主分支中的先前版本的源代码恢复完整代码。我们怎样才能在GitHub中做到这一点?有没有可用的命令。
我们希望完成以前版本的主分支代码的回滚
答案 0 :(得分:2)
在master
分支中恢复提交的最安全方法是使用git revert
:
git checkout master
git revert <SHA-1>
此处将<SHA-1>
替换为您要还原的提交的哈希值。也可能是您希望在master
中还原一系列提交的情况。您还可以将git revert
与提交范围一起使用,例如
git revert A^..D
此命令会在两端恢复提交A
到D
包含。
你可以通过执行git reset --hard HEAD~3
或与此类似的东西来核对你想要离开的提交。但是,由于master
是公开的,并且几乎肯定会被其他人共享,因此以这种方式重写历史可能会很危险。