idea中如何使用git進(jìn)行版本回退詳解
一、在idea中查看提交的歷史記錄

- 右鍵單擊項目
- 單擊git
- 單擊Show History
結(jié)果展示:

除了第一條記錄是創(chuàng)建倉庫默認(rèn)就有的,這條默認(rèn)的消息我們不用管它,其他的全部都是提交記錄。
二、復(fù)制當(dāng)前最新的版本號,以及需要回退的版本號

假設(shè)本次我需要回退到User.java這個版本,首先右鍵單擊最新的版本(新增了d.txt),再單擊Copy Revison Number(這一步是拷貝版本號)。
得到最新的版本號:
3a25435cc5a74ac6d2ad9f82f8ace340e498d4d0
對User.java執(zhí)行同樣的操作:
首先右鍵單擊User.java,再單擊Copy Revison Number(這一步是拷貝版本號)。
得到User.java這個版本的版本號:
09b35d57f1bff43490f00bbaee8e269ca649e765
這一步需要得到最新的版本號以及需要回退的版本號,共2個版本號。
三、執(zhí)行回退操作。

- 右鍵單擊項目
- 單擊git
- 單擊Reset HEAD

Reset Type一定要改成Hard
To Commit 這里一定要設(shè)置成需要回退的版本號。
因為此時的操作相當(dāng)于在命令行執(zhí)行 git reset –hard 版本號
需要回退的版本號User.java:
09b35d57f1bff43490f00bbaee8e269ca649e765
這里接下面
執(zhí)行了上面的操作,此時的本地倉庫就回退到了User.java這個版本。
然后再次查看提交記錄,會發(fā)現(xiàn)提交記錄,僅停留在了User.java

本地倉庫也回退到了之前的版本

出現(xiàn)的問題:
User.java之后的提交記錄全部沒有了,這樣會出現(xiàn)一個問題,如果此時直接將本地倉庫推送至遠(yuǎn)程倉庫 ,由于沒有最新的版本號記錄,會直接恢復(fù)到最新的版本號中的內(nèi)容。
下面的操作不要執(zhí)行,只是為了提醒自己會出現(xiàn)這樣的問題才執(zhí)行的!
此時直接將本地倉庫推送至遠(yuǎn)程倉庫得到結(jié)果:

四、提交記錄中輸入最新版本號
因為沒有最新的版本號內(nèi)容,所以將本地倉庫推送至遠(yuǎn)程倉庫后會直接恢復(fù)到最新倉庫的內(nèi)容,為了解決這個問題,我們需要在提交記錄中輸入最新的版本號。
這里接上面
在第3步輸入了需要回退的版本后,還需要輸入最新的版本號。

執(zhí)行完成后會發(fā)現(xiàn)本地倉庫還是User.java,但是有了User.java之后的提交記錄。

五、提交到本地倉庫,然后推送到遠(yuǎn)程倉庫
執(zhí)行完上面的操作后,發(fā)現(xiàn)提交記錄停留在了之前最新的版本號,但是沒有回退到User.java這個操作的版本號,所以此時需要提交到本地倉庫,形成一次提交記錄再推送至遠(yuǎn)程倉庫。
將回退到User.java這步操作提交到本地倉庫

查看提交記錄

生成了回退操作的提交記錄,并且之前所有操作記錄的版本號都存在。
遠(yuǎn)程倉庫也和本地倉庫內(nèi)容一致:


Idea中使用git回退到指定版本的步驟:
總結(jié):
- 查看提交的歷史記錄,記錄下最新的提交記錄版本號以及需要回退的版本號
- 在Git->Reset Head->Rest Type中輸入需要回退的版本號。
- 在Git->Reset Head->Rest Type中輸入最新的版本號
- 操作完2.3的步驟后,一定要提交到本地倉庫形成一次提交記錄。
- 再推送到遠(yuǎn)程倉庫即可。
到此這篇關(guān)于idea中如何使用git進(jìn)行版本回退的文章就介紹到這了,更多相關(guān)idea用git版本回退內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
SpringBoot中的@Conditional?注解的使用
@Conditional是Spring4新提供的注解,它的作用是按照一定的條件進(jìn)行判斷,滿足條件的才給容器注冊Bean,本文主要介紹了SpringBoot中的@Conditional?注解的使用2024-01-01
關(guān)于Java整合RabbitMQ實現(xiàn)生產(chǎn)消費的7種通訊方式
這篇文章主要介紹了關(guān)于Java整合RabbitMQ實現(xiàn)生產(chǎn)消費的7種通訊方式,消息中間件是基于隊列與消息傳遞技術(shù),在網(wǎng)絡(luò)環(huán)境中為應(yīng)用系統(tǒng)提供同步或異步、可靠的消息傳輸?shù)闹涡攒浖到y(tǒng),需要的朋友可以參考下2023-05-05
Springmvc DispatcherServlet原理及用法解析
這篇文章主要介紹了Springmvc DispatcherServlet原理及用法解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-09-09
Springboot實現(xiàn)動態(tài)定時任務(wù)管理的示例代碼
最近在做spring boot項目開發(fā)中,由于使用@EnableScheduling注解和@Scheduled注解來實現(xiàn)的定時任務(wù),只能靜態(tài)的創(chuàng)建定時任務(wù),不能動態(tài)修改、添加、刪除、啟/停任務(wù),下面通過本文給大家介紹Springboot實現(xiàn)動態(tài)定時任務(wù)管理的方法,感興趣的朋友跟隨小編一起看看吧2023-07-07
SpringBoot如何優(yōu)雅實現(xiàn)接口參數(shù)驗證
為了保證參數(shù)的正確性,我們需要使用參數(shù)驗證機制,來檢測并處理傳入的參數(shù)格式是否符合規(guī)范,所以本文就來和大家聊聊如何優(yōu)雅實現(xiàn)接口參數(shù)驗證吧2023-08-08
詳解spring boot容器加載完后執(zhí)行特定操作
這篇文章主要介紹了詳解spring boot容器加載完后執(zhí)行特定操作,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-01-01

