IDEA實(shí)現(xiàn)回退提交的git代碼(四種常見(jiàn)場(chǎng)景)
在平時(shí)工作中我們需要把本地修改的代碼提交到遠(yuǎn)端倉(cāng)庫(kù),有時(shí)候發(fā)現(xiàn)提交的分支出錯(cuò)或者多提交非版本代碼,這時(shí)候想要撤回我們的提交
簡(jiǎn)單介紹幾種IDEA提交代碼回退的方式:
- Undo Commit
- Revert Commit
- Reset Current Branch here
- 合并出錯(cuò),出現(xiàn)大量git log,如何找到自己提交的git 并回退
1.已提交commit,還未push到遠(yuǎn)端(Undo Commit)
1.1選中提交了但是還沒(méi)有push到遠(yuǎn)端的git 記錄,右鍵undo Commit

2.已提交commit并push到遠(yuǎn)端(Revert Commit)
2.1選擇提交且推送到遠(yuǎn)端的那條記錄"xxxx",右鍵Revert Commit
2.2 會(huì)生成一條Revert “xxxx” 的Commit記錄
2.3直接push到遠(yuǎn)端,則撤銷了此次提交
2.4如果想要你提交的代碼回到本地,點(diǎn)擊提交記錄,在右側(cè)代碼明細(xì)清單中右鍵cherry-pick selected changes


3.已提交commit并push到遠(yuǎn)端(Reset Current Branch to Here)
3.1 選擇退回到指定的版本(一般是你提交的git記錄的下一條) 右鍵 Reset Current Branch to Here ,選擇以下幾種方式的一種
Soft:回滾后,保留修改的文件到本地(常用) git reset --soft xxxxidMixed:保留修改的文件到本地,但不保留已提交的git索引Hard:回滾到選擇的版本,所有提交和未提交的修改都將丟棄(常用)git reset --hard abcdefKeep:回滾到選擇的版本,已提交的將被丟棄,但保留了本地未提交的修改內(nèi)容
3.2 強(qiáng)制推送到遠(yuǎn)端 Force push



4.合并分支出錯(cuò),導(dǎo)致出現(xiàn)大量git log記錄
今天合并分支的時(shí)候,一不小心把整個(gè)分支合并到了另外項(xiàng)目的分支上,然后git log 上面顯示了很多記錄,都是合并分支的歷史git log,導(dǎo)致通過(guò)idea沒(méi)辦法回退,通過(guò)找到文件夾,找到引用記錄,然后發(fā)現(xiàn)了我合并的那個(gè)記錄,在右鍵重置到了沒(méi)合并之前的分支記錄下。


總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
- IDEA中g(shù)it不提交指定文件的問(wèn)題
- idea編譯器使用git拉取、提交非常慢的原因分析及解決
- idea中g(shù)it提交的代碼如何回退到指定版本
- IDEA如何設(shè)置忽略git提交的文件
- 解決IDEA GIT記錄無(wú)法查看提交文件的問(wèn)題
- IDEA中項(xiàng)目集成git提交代碼的詳細(xì)步驟
- idea上提交項(xiàng)目到gitee 最后出現(xiàn) Push rejected的問(wèn)題處理方法
- IDEA通過(guò)git回滾到某個(gè)提交節(jié)點(diǎn)或某個(gè)版本的操作方法
- idea提交git版本由于中文文件名卡死不動(dòng)
相關(guān)文章
MyBatis自定義攔截器實(shí)現(xiàn)優(yōu)化SQL日志輸出
這篇文章主要介紹了優(yōu)化MyBatisPlus SQL日志輸出的方案,針對(duì)默認(rèn)日志格式存在的不足,例如缺少時(shí)間、可讀性差、存儲(chǔ)成本高等,希望對(duì)大家有所幫助2026-03-03
Java實(shí)現(xiàn)一個(gè)簡(jiǎn)易版的多級(jí)菜單功能
這篇文章主要給大家介紹了關(guān)于Java如何實(shí)現(xiàn)一個(gè)簡(jiǎn)易版的多級(jí)菜單功能的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2022-01-01
Java輸入流Scanner/BufferedReader使用方法示例
這篇文章主要介紹了Java輸入流Scanner/BufferedReader使用方法,大家看示例吧2013-11-11
Windows下Java環(huán)境配置的超詳細(xì)教程
這篇文章主要給大家介紹了關(guān)于Windows下Java環(huán)境配置的超詳細(xì)教程,文中通過(guò)圖文將配置的過(guò)程介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2023-01-01
Java設(shè)置JSON字符串參數(shù)編碼的示例詳解
在Java中創(chuàng)建JSON字符串,我們可以使用多個(gè)庫(kù),其中最流行的是Jackson、Gson和org.json,,下面給大家分享Java設(shè)置JSON字符串參數(shù)編碼的示例,感興趣的朋友一起看看吧2024-06-06
Fluent Mybatis學(xué)習(xí)之Update語(yǔ)法實(shí)踐
Fluent MyBatis是一個(gè)MyBatis的增強(qiáng)工具,沒(méi)有對(duì)mybatis做任何修改。本篇文章將詳細(xì)介紹對(duì)Fluent Mybatis中的update語(yǔ)法進(jìn)行驗(yàn)證。代碼具有一定價(jià)值,感興趣的小伙伴可以學(xué)習(xí)一下2021-11-11
java編程實(shí)現(xiàn)求質(zhì)數(shù)與因式分解代碼分享
這篇文章主要介紹了Java編程實(shí)現(xiàn)求質(zhì)數(shù)與因式分解代碼分享,對(duì)二者的概念作了簡(jiǎn)單介紹(多此一舉,哈哈),都是小學(xué)數(shù)學(xué)老師的任務(wù),然后分享了求解質(zhì)數(shù)和因式分解的Java代碼,具有一定借鑒價(jià)值,需要的朋友可以參考下。2017-12-12

