文档章节

IDEA Git版本回滚提交方式

我爱春天的毛毛雨
 我爱春天的毛毛雨
发布于 02/14 14:48
字数 703
阅读 250
收藏 3

以此文记录下在IDEA中如何回滚项目历史版本,并提交远程

大致分为两步:

第一步,回滚本地代码;

第二步,回滚远程代码;

 

首先,我们先来回滚本地代码

按照下图的步骤,获取你要回滚的历史版本的版本号

然后项目根目录右键 Git->Repository->Reset HEAD 

Reset Type 有三种:

mixed 默认方式,只保留源码,回退commit和index信息
soft 回退到某个版本,只回退了commit的信息,不会恢复到index file一级。如果还要提交,直接commit
hard 彻底回退,本地源码也会变成上一个版本内容

此时我们选择Hard彻底回退,点击Reset就能将本地代码版本回滚到指定版本。

 

然后我们开始将回滚的本地代码提交到远程仓库,此时有两种方式:

第一种,直接强制提交,使用git命令提交 git push -f,但是这样会把回滚版本之后的提交记录全部删除,因此不建议这样做。

第二种,用前面我们回滚本地的方式,再次回滚到最新版本。

首先,我们获取到远程分支最新版本的版本号

然后,我们再次Git->Repository->Reset HEAD 这次与之前有些不一样,我们Reset Type采用Mixed方式将源码保留,然后点击Reset。

最后我们发现代码已经是旧版本的代码,并且版本还是最新版本,此时正常提交push后我们的本地和远程代码的回滚就完成了。

 

参考:https://blog.csdn.net/gomeplus/article/details/78241070

 

上面的操作基于IDEA工具来进行操作,其底层原理为利用git的tag标签回滚

git tag操作参考:https://blog.csdn.net/fuchaosz/article/details/51698896

我们只在此证明利用Git tag回滚操作与上面的IDEA操作的关系

首先,切换到IDEA的Terminal命令行(也可以是dos命令行,Git Bash命令行),执行下面的命令

注意tag详细信息里面的commit id

我们在看看git的历史提交记录中上面tag提交的那次记录的Revision Number

Revision Number为 b8e7431ac80cc37d315362b7d2968d4940583820,不同人的编号会不一样,但是commit id 与 Revision Number一定是一样的

那么我们之前IDEA操作的也都是通过这种原理来实现的。

© 著作权归作者所有

我爱春天的毛毛雨
粉丝 5
博文 48
码字总数 114206
作品 0
鸡西
私信 提问
通过IDEA提交代码到Gerrit

首先,IDEA,需要在setting-plugin中下载安装gerrit插件,以实现gerrit提交相关功能。 然后尝试提交代码,发现被拒绝,在确认有权限的情况下,看了终端,报错缺少Change-Id IDEA不同于eclip...

某只小强
04/02
194
0
使用 IDEA + Maven + Git 快速开发 Java Web 应用

引言 今天想跟大家分享一下我主要的 Java 开发工具,我一般是这样工作的:用 IDEA 写代码,用 Maven 管理 jar 包依赖与项目打包,用 Git 进行代码版本控制。 关于这三款工具的安装与配置的过...

黄勇
2013/11/11
24.5K
17
IntelliJ IDEA 2018.1新特性

工欲善其事必先利其器,如果有一款IDE可以让你更高效地专注于开发以及源码阅读,为什么不试一试? 本文转载自:netty技术内幕 3月27日,jetbrains正式发布期待已久的IntelliJ IDEA 2018.1,再...

Romane
2018/06/23
358
0
idea真的很好用吗

想从eclipse转向idea开发,可惜这几天遇到一堆坑爹的问题。好处没体会到, 问题倒是遇到一堆。 环境 IntelliJ IDEA 13.1.5 + maven + git +windows 1. 项目结构问题. idea中采用project和mod...

Jeff_sj
2014/10/15
5.4K
21
IntelliJ IDEA 11 关于 Git 集成方面的一些新特性

IntelliJ IDEA 11 的早期测试版本已经在一个月前发布,我们来看看该版本在 Git 集成方面值得关注的一些新变化。 首先最值得兴奋的是 Git 的修订版图表: 现在 IntelliJ IDEA 可显示可视化的提...

红薯
2011/11/17
4.5K
5

没有更多内容

加载失败,请刷新页面

加载更多

最简单的获取相机拍照的图片

  import android.content.Intent;import android.graphics.Bitmap;import android.os.Bundle;import android.os.Environment;import android.provider.MediaStore;import andr......

MrLins
今天
6
0
说好不哭!数据可视化深度干货,前端开发下一个涨薪点在这里~

随着互联网在各行各业的影响不断深入,数据规模越来越大,各企业也越来越重视数据的价值。作为一家专业的数据智能公司,个推从消息推送服务起家,经过多年的持续耕耘,积累沉淀了海量数据,在...

个推
今天
9
0
第三方支付-返回与回调注意事项

不管是支付宝,微信,还是其它第三方支付,第四方支付,支付机构服务商只要涉及到钱的交易都要进行如下校验,全部成功了才视为成功订单 1.http请求是否成功 2.校验商户号 3.校验订单号及状态...

Shingfi
今天
5
0
简述Java内存分配和回收策略以及Minor GC 和 Major GC(Full GC)

内存分配: 1. 栈区:栈可分为Java虚拟机和本地方法栈 2. 堆区:堆被所有线程共享,在虚拟机启动时创建,是唯一的目的是存放对象实例,是gc的主要区域。通常可分为两个区块年轻代和年老代。更...

DustinChan
今天
7
0
Excel插入批注:可在批注插入文字、形状、图片

1.批注一直显示:审阅选项卡-------->勾选显示批注选项: 2.插入批注快捷键:Shift+F2 组合键 3.在批注中插入图片:鼠标右键点击批注框的小圆点【重点不可以在批注文本框内点击】----->调出批...

东方墨天
今天
7
1

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部