git还原到之前某个版本

场景

想要回到之前的某一版本,该怎么办呢?

解决方案

方案一 git reset --hard abcdef

相当于强制重置为某个版本。 然后再 git push -f 即可。

实际操作的时候报错了,所以用git revert操作的。 报错信息为: fatal: ambiguous argument ‘–hard’: unknown revision or path not in the working tree. Use ‘–’ to separate paths from revisions, like this:

百度了几个答案,感觉都不太对症,求解?

方案二 git revert -n abcdef

操作步骤: git revert -n v1.0 git commit -n 回退掉v1.0 这样就回退掉了v1.0。

如果要回退多个版本: git revert -n v1.2 git revert -n v1.0 git commit -n 回退掉v1.0、v1.2 依次类推,回退多少个版本都可以。

说明: 严格来说,git revert设计之初不是为了这种应用场景。设计的目的是多个版本中,想要回退某一版本(不一定是head版本),其他版本不动。 用git revert是最合适的。

当然,如果版本太靠前,这种方式不太推荐,因为要回退很多版本。

经验分享 程序员 微信小程序 职场和发展