一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - 編程技術 - 詳解IDEA git分支回退指定的歷史版本

詳解IDEA git分支回退指定的歷史版本

2020-08-30 14:42LZ1151226 編程技術

這篇文章主要介紹了詳解IDEA git分支回退指定的歷史版本,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

場景

當我提交了本次修改到本地和遠程分支后,發現我本次提交還少了一些修改內容,或者說本次修改是完全錯誤的,然而也push到遠程倉庫去了。如何回退?

問題

已經提交到倉庫(本地和遠程倉庫)的內容如何利用idea回退到原來指定版本?

方法

有兩種方法:1、revert操作 2、利用idea的reset head指針

影響

方法1的revert操作會當成一個新的提交記錄,追加到提交日志當中,這樣便保留了原來的提交記錄。(推薦)

方法2的reset head指針,會拋棄原來的提交記錄,使head指針強制指向指定的版本。

實驗環境

詳解IDEA git分支回退指定的歷史版本

上圖是實驗環境。本次實驗只操作readme.md文件。初始化時,master和演示使用的分支“git_demo”都是指向版本一:“版本1:第一次編輯”文本內容。當前操作分支為git_demo。

說明

本次實驗環境未必和您的情況完全相符,不過大致思路是相同的。如果您在解決問題過程中遇到沖突,解決就好了。

方法1:revert操作

當在版本1基礎上進行修改內容,并提交本地、遠程倉庫后,發現提交的內容不是我想要的,或者是完全錯誤的,需要回退版本1。

詳解IDEA git分支回退指定的歷史版本

步驟

在想要回退歷史版本上單擊鼠標右鍵,選擇“revert”(見下圖)

詳解IDEA git分支回退指定的歷史版本

這時彈出沖突對話框,雙擊沖突文件以解決沖突。(見下圖)

詳解IDEA git分支回退指定的歷史版本

在解決沖突對話框中,決定最終的版本文件。(見下圖)

詳解IDEA git分支回退指定的歷史版本

重新提交到本地倉庫(見下圖)

詳解IDEA git分支回退指定的歷史版本push

同步遠程倉庫(見下圖)

詳解IDEA git分支回退指定的歷史版本

這種回退的好處在于,如果后悔了“回退”這個操作,也可以回退到沒有回退之前的版本。因為歷史記錄還保留提交記錄。

方法2:reset head指針

當在版本1基礎上進行修改內容,并提交本地、遠程倉庫后,發現提交的內容不是我想要的,或者是完全錯誤的,需要回退版本1。

詳解IDEA git分支回退指定的歷史版本

步驟在想要回退歷史版本上單擊鼠標右鍵,選擇“reset current branch to here”(見下圖)

詳解IDEA git分支回退指定的歷史版本

在彈出的git reset 參數類型選擇框中,選擇hard(見下圖),并reset

詳解IDEA git分支回退指定的歷史版本

本地倉庫回退到了版本1,需要同步遠程倉庫,執行push操作。

詳解IDEA git分支回退指定的歷史版本push

后,提示push拒絕。打開terminal,在本項目目錄下,輸入git push -f 強制同步遠程倉庫。

詳解IDEA git分支回退指定的歷史版本

詳解IDEA git分支回退指定的歷史版本

詳解IDEA git分支回退指定的歷史版本

同步后,會發現,git日志丟失了版本1以后的提交。

總結

  • revert操作其實就是回退操作,默認是回退到最近一次提交點,也可以回退到指定提交點,就像本次實驗演示的。
  • revert的操作其實也是設置head指針。
  • 其實比較推薦revert操作,畢竟可以后悔。方法2中git push -f 強制同步操作并不推薦使用,在團隊協作環境中可能會引發問題。
  • 在方法2中,選擇git reset參數選擇的是hard,這種參數適合場景是我只想回退到指定版本的文本。工作區里的內容可以放棄,版本2完全放棄。其實也可以選擇mixed。mixed作用是在設置head指針時,保留當前工作區里的文本內容。這樣方便直接修改,適合于提交的內容有誤,只想修正回來就可以了這種情況。(對比效果見下圖)

詳解IDEA git分支回退指定的歷史版本

詳解IDEA git分支回退指定的歷史版本

在回退過程中,可能您的情況不會像本實驗那么簡單,也就是說會出現沖突情況。那么只需要解決沖突即可。

結尾

除了hard和mixed選項,其它回退選項的效果演示可以訪問這里: git reset 模式演示

回退版本的方法可能還有很多,本次實驗也是片面的。難免有些錯誤遺漏的地方,還請各位老師們不要吝惜各自的才華,懇請老師們多多指正

到此這篇關于詳解idea git分支回退指定的歷史版本的文章就介紹到這了,更多相關idea git分支回退指定歷史版本內容請搜索服務器之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持服務器之家!

原文鏈接:https://blog.csdn.net/woshi1226a/article/details/86664159

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 2021国产麻豆剧传媒剧情 | 欧美老妪 | 国内精品久久久久影院男同志 | aaaaa特级毛片| 国产欧美va欧美va香蕉在线观看 | 99久久99久久久精品齐齐鬼色 | 别停好爽好深好大好舒服视频 | 香蕉国产人午夜视频在线观看 | 欧美人在线一区二区三区 | 九九精品视频在线观看九九 | 极端 成熟 性别 视频 | 亚洲国产成人久久综合一区77 | 爱福利视频一区二区 | 国产卡一卡二卡四卡无卡 | 久久高清一级毛片 | 亚洲欧美成人综合久久久 | dasd817黑人在线播放 | 美女福利视频网站 | 91国内精品 | 亚洲国产欧美在线人成 | 高h短篇辣肉各种姿势bl | 四虎影视免费 | 亚洲国产成人精品 | 91美女在线视频 | 韩国一级淫片特黄特刺激 | 国产欧美日韩精品在线 | 日本三级成人中文字幕乱码 | 亚洲夜色夜色综合网站 | 欧美一级xxx| 91天堂一区二区 | 亚洲天堂在线视频观看 | 男人天堂网在线 | 国产在线欧美日韩精品一区二区 | 香蕉国产成版人视频在线观看 | 日老逼 | 天堂久久久久va久久久久 | ts人妖国产一区 | 99久久国产综合精品麻豆 | 美女脱了内裤打开腿让你桶爽 | 亚洲精品人成网在线播放影院 | 热久久天天拍天天拍热久久2018 |