Idea Git 已提交代码版本回滚

本文主要记录在 Idea 中 如何通过 Git 回滚本地仓库和远程仓库代码版本

一、提交本地仓库代码回滚

1、模拟提交到本地仓库

模拟一次提交,提交到本地仓库,未提交到远程仓库

本地仓库 有
Idea Git 已提交代码版本回滚_第1张图片

远程仓库 无
Idea Git 已提交代码版本回滚_第2张图片

2、复制提交版本号

复制你想回到的版本的版本号,假如这里回到本次提交之前的版本
Idea Git 已提交代码版本回滚_第3张图片

3、回滚

项目右键,选择 Reset HEAD
Idea Git 已提交代码版本回滚_第4张图片

Idea Git 已提交代码版本回滚_第5张图片

Reset Type 有三种:

3.1、mixed

mixed 默认方式,只保留源码,回退commit和index信息

回退之后如下,文件也显示未加入 git 管理
Idea Git 已提交代码版本回滚_第6张图片

3.2、soft

soft:回退到某个版本,只回退了commit的信息,不会恢复到index file一级。如果还要提交,直接commit

回退之后如下,文件回到未提交状态
Idea Git 已提交代码版本回滚_第7张图片

3.3、hard

hard:彻底回退,本地源码也会变成上一个版本内容
这种方式回退之后,上一次提交的代码也就没有了

选择合适自己的回滚方式

To Commit:粘贴第2步复制的版本号

点击 Reset 回滚

本地仓库提交记录无
Idea Git 已提交代码版本回滚_第8张图片

二、远程仓库代码回滚

远程仓库回滚和本地仓库都差不多,只是多了一行命令

原理就是,先回滚本地仓库,然后把本地仓库代码版本强制提交到远程仓库就可以了

1、模拟提交远程仓库

Idea Git 已提交代码版本回滚_第9张图片

2、先回滚本地仓库

复制需要回滚到的版本号

Idea Git 已提交代码版本回滚_第10张图片

Idea Git 已提交代码版本回滚_第11张图片

Idea Git 已提交代码版本回滚_第12张图片

点击 Reset 回滚之后

本地仓库没了
Idea Git 已提交代码版本回滚_第13张图片

远程仓库还在

Idea Git 已提交代码版本回滚_第14张图片

3、回滚远程仓库

打开控制台执行以下命令,强制提交本地仓库版本

git push -f

Idea Git 已提交代码版本回滚_第15张图片

执行之后再看远程仓库,就会发现提交记录已经没有了,远程仓库的提交记录也被回滚了

Idea Git 已提交代码版本回滚_第16张图片

你可能感兴趣的:(Git,git,intellij-idea)