Git版本回退的最佳方式

使用git开发的过程中,存在误提交的时候怎么办呢?不用慌张,强大的git提供了两种版本回退的方式,可以让你恢复提交之前的内容:

方式一:reset(不推荐)

通过reset的方式,把head指针指向之前的某次提交,reset之后,后面的版本就找不到了

操作步骤如下:

1、在gitlab上找到要恢复的版本号,如:

139dcfaa558e3276b30b6b2e5cbbb9c00bbdca96 

2、在客户端执行如下命令(执行前,先将本地代码切换到对应分支):

git reset --hard 139dcfaa558e3276b30b6b2e5cbbb9c00bbdca96 

3、强制push到对应的远程分支(如提交到develop分支)

git push -f -u origin develop

OK,现在到服务器上看到的代码就已经被还原回去了。这种操作存在一个问题,服务器上的代码虽然被还原了,但假如有多个人在使用,他们本地的版本依然是比服务器上的版本高的,所以,别人再重新提交代码的话,你撤销的操作又会被重新,你上面的操作也就白操作了。解决办法是,让别人把本地的分支先删掉,然后重新从服务器上拉取分支

方式二:revert(推荐)

这种方式不会把版本往前回退,而是生成一个新的版本。所以,你只需要让别人更新一下代码就可以了,你之前操作的提交记录也会被保留下来

操作步骤如下:

1、找到你误提交之前的版本号

2、git revert -n 版本号

3、git commit -m xxxx 提交

4、git push 推送到远程

OK,版本还原了,通知其他人更新一下代码吧

参考:https://blog.csdn.net/yxlshk/article/details/79944535

原文地址:https://www.cnblogs.com/aligege/p/10221174.html