回退和提交
之前使用git都是使用命令行模式,第一次接触idea,使用idea控制git的回退和提交,现在把过程记录下来。
local本地仓库的回退
1.首先切换到需要回退的分支
2.复制需要回退的历史版本的代号
3.开始回退,粘贴
注意! 这个让我掉了几根头发
注意reset Type选项,了解三个选项的区别 Reset Type 有三种:
mixed 默认方式,只保留源码,回退commit和index信息 soft 回退到某个版本,只回退了commit的信息,不会恢复到index file一级。如果还要提交,直接commit hard 彻底回退,本地源码也会变成上一个版本内容
这里选着hard,全部退回,代码和信息
这时候本地仓库的版本已经回退,接下来是远程仓库的回退
远程仓库的回退
第一种,直接强制提交,使用git命令提交 git push -f,但是这样会把回滚版本之后的提交记录全部删除,因此不建议这样做。
第二种,用前面我们回滚本地的方式,再次回滚到最新版本。(这种的缺点是代码回退了,但是提交的信息没有回退)
首先,我们获取到远程分支最新版本的版本号
53099834ba5e6d263331f972ce25b86138d.jpg
然后,我们再次Git->Repository->Reset HEAD 这次与之前有些不一样,我们Reset Type采用Mixed方式将源码保留,然后点击Reset。
bf97f0575517c1ac6cac4c6d95963d6c9d2.jpg
最后我们发现代码已经是旧版本的代码,并且版本还是最新版本,此时正常提交push后我们的本地和远程代码的回滚就完成了。
|