idea中如何使用git进行版本回退详解

作者:Mr_king_dev 时间:2022-03-24 06:28:11 

一、在idea中查看提交的历史记录

idea中如何使用git进行版本回退详解

  • 右键单击项目

  • 单击git

  • 单击Show History

结果展示:

idea中如何使用git进行版本回退详解

除了第一条记录是创建仓库默认就有的,这条默认的消息我们不用管它,其他的全部都是提交记录。

二、复制当前最新的版本号,以及需要回退的版本号

idea中如何使用git进行版本回退详解

假设本次我需要回退到User.java这个版本,首先右键单击最新的版本(新增了d.txt),再单击Copy Revison Number(这一步是拷贝版本号)。

得到最新的版本号:

3a25435cc5a74ac6d2ad9f82f8ace340e498d4d0

对User.java执行同样的操作:

首先右键单击User.java,再单击Copy Revison Number(这一步是拷贝版本号)。

得到User.java这个版本的版本号:

09b35d57f1bff43490f00bbaee8e269ca649e765

这一步需要得到最新的版本号以及需要回退的版本号,共2个版本号。

三、执行回退操作。

idea中如何使用git进行版本回退详解

  • 右键单击项目

  • 单击git

  • 单击Reset HEAD

idea中如何使用git进行版本回退详解

Reset Type一定要改成Hard

To Commit 这里一定要设置成需要回退的版本号。

因为此时的操作相当于在命令行执行 git reset –hard 版本号

需要回退的版本号User.java:

09b35d57f1bff43490f00bbaee8e269ca649e765

这里接下面

执行了上面的操作,此时的本地仓库就回退到了User.java这个版本。

然后再次查看提交记录,会发现提交记录,仅停留在了User.java

idea中如何使用git进行版本回退详解

本地仓库也回退到了之前的版本

idea中如何使用git进行版本回退详解

出现的问题:

User.java之后的提交记录全部没有了,这样会出现一个问题,如果此时直接将本地仓库推送至远程仓库 ,由于没有最新的版本号记录,会直接恢复到最新的版本号中的内容。

下面的操作不要执行,只是为了提醒自己会出现这样的问题才执行的!

此时直接将本地仓库推送至远程仓库得到结果:

idea中如何使用git进行版本回退详解

四、提交记录中输入最新版本号

因为没有最新的版本号内容,所以将本地仓库推送至远程仓库后会直接恢复到最新仓库的内容,为了解决这个问题,我们需要在提交记录中输入最新的版本号。

这里接上面

在第3步输入了需要回退的版本后,还需要输入最新的版本号。

idea中如何使用git进行版本回退详解

执行完成后会发现本地仓库还是User.java,但是有了User.java之后的提交记录。

idea中如何使用git进行版本回退详解

五、提交到本地仓库,然后推送到远程仓库

执行完上面的操作后,发现提交记录停留在了之前最新的版本号,但是没有回退到User.java这个操作的版本号,所以此时需要提交到本地仓库,形成一次提交记录再推送至远程仓库。

将回退到User.java这步操作提交到本地仓库

idea中如何使用git进行版本回退详解

查看提交记录

idea中如何使用git进行版本回退详解

生成了回退操作的提交记录,并且之前所有操作记录的版本号都存在。

远程仓库也和本地仓库内容一致:

idea中如何使用git进行版本回退详解

idea中如何使用git进行版本回退详解

Idea中使用git回退到指定版本的步骤:

总结:

  1. 查看提交的历史记录,记录下最新的提交记录版本号以及需要回退的版本号

  2. 在Git->Reset Head->Rest Type中输入需要回退的版本号。

  3. 在Git->Reset Head->Rest Type中输入最新的版本号

  4. 操作完2.3的步骤后,一定要提交到本地仓库形成一次提交记录。

  5. 再推送到远程仓库即可。

来源:https://blog.csdn.net/m0_68201836/article/details/128165304

标签:idea,git版本,回退
0
投稿

猜你喜欢

  • Java 数据结构与算法系列精讲之字符串暴力匹配

    2021-10-06 05:43:27
  • Java 使用getClass().getResourceAsStream()方法获取资源

    2023-07-23 08:59:56
  • Java各种排序算法汇总(冒泡,选择,归并,希尔及堆排序等)

    2021-10-05 14:46:23
  • Android 2.3.7.r1 camera录像过程中按menu菜单键时会停止录像

    2023-06-13 01:46:10
  • Java Springboot的目的你知道吗

    2022-12-20 14:16:24
  • Android仿微信朋友圈点击加号添加图片功能

    2022-11-28 12:44:45
  • No ‘Access-Control-Allow-Origin‘ header is present跨域及解决

    2022-07-12 13:33:08
  • springboot post接口接受json时,转换为对象时,属性都为null的解决

    2023-06-17 15:24:23
  • 用intellij Idea加载eclipse的maven项目全流程(图文)

    2021-09-12 06:11:16
  • 使用 BenchmarkDotNet 对 C# 代码进行基准测试

    2023-06-25 00:38:49
  • c# Linq查询详解

    2023-05-23 20:43:50
  • springboot 定时任务@Scheduled实现解析

    2023-11-10 16:18:24
  • 基于Java+SpringBoot+Vue前后端分离实现仓库管理系统

    2023-11-01 04:21:22
  • IntellJ IDEA神器使用技巧(小结)

    2023-08-08 22:01:44
  • Java最全文件操作实例汇总

    2023-11-14 13:00:17
  • 一文带你学会Java事件机制

    2022-07-22 05:05:11
  • C语言文件操作之fread函数详解

    2023-07-06 18:24:15
  • maven的生命周期及常用命令介绍

    2022-03-10 17:21:16
  • C#记一次http协议multipart/form-data的boundary问题

    2021-07-01 17:45:49
  • 适配Android 8.0版本更新安装与通知栏的一些坑

    2022-05-01 13:23:25
  • asp之家 软件编程 m.aspxhome.com