场景:如果我们某次修改了某些内容,并且已经commit到本地仓库,而且已经push到远程仓库了。这种情况下,我们想把本地和远程仓库都回退到某个版本,该怎么做呢?
git reset只是在本地仓库中回退版本,而远程仓库的版本不会变化
这样,即时本地reset了,但如果再git pull,那么,远程仓库的内容又会和本地之前版本的内容进行merge
这并不是我们想要的东西,这时可以有2种办法来解决这个问题:
直接在远程server的仓库目录下,执行git reset –soft 10efa来回退。注意:在远程不能使用mixed或hard参数
在本地直接把远程的master分支给删除,然后再把reset后的分支内容给push上去,如下:
#新建old_master分支做备份
git branch old_master
#push到远程
git push origin old_master:old_master
#本地仓库回退到某个版本
git reset –-hard bae168
#删除远程的master分支
git push origin :master
#重新创建master分支
git push origin master
发表评论 取消回复