场景:代码commit到本地仓库,还没有push到远程仓库,这时要回退代码。

介绍下Reset Head中三种Reset Type类型:

1.Mixed(默认):它回退到某个版本,本地会保留源码,回退commit和index信息,若要提交重新commit。

2.soft: 回退到某个版本,只回退了commit的信息,不会恢复到index file一级,若要提交重新commit。

3.Hard:彻底回退到某个版本,本地的源码也会变为上一个版本的内容。

操作如下:

拿ConfigServerApplication类中的fun() 方法来验证,每次提交修改方法中的数据,目前本地仓库的记录是10,远程仓库的记录是8,如下:

idea中git回退本地仓库版本-LMLPHP

idea中git回退本地仓库版本-LMLPHP

idea中git回退本地仓库版本-LMLPHP

现回退到9,记录9的version number:d7c653bdbd25c530aba6ad8c202048487b54a0ab

选择Reset Head:

idea中git回退本地仓库版本-LMLPHP

idea中git回退本地仓库版本-LMLPHP

Reset Type:选择默认的Mixed

To Commit:输入刚才记录的9的version number

点击Reset

idea中git回退本地仓库版本-LMLPHP

idea中git回退本地仓库版本-LMLPHP

commit记录回退到了9,本地记录还是10,这时可重新commit到本地仓库或revert还原到本地仓库的记录。push时只有记录9.

若Reset Type:选择Hard,如下:

idea中git回退本地仓库版本-LMLPHP

本地和commit记录都会回退,点击Reset后如下:

idea中git回退本地仓库版本-LMLPHP

欢迎扫码交流:

idea中git回退本地仓库版本-LMLPHP

05-11 17:55