国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術文章
文章詳情頁

詳解IDEA Git Reset 選項說明

瀏覽:57日期:2024-08-21 18:25:54

1 . 目標

演示下圖的git reset 各選項的效果。

詳解IDEA Git Reset 選項說明

2. Git Reset操作說明

圖中說明:

his will reset the current branch head to the selected commit, and update the working tree and the index accoding to the seleted mode.

意思是:該操作會重置當前分支指針到所選擇的提交點,并且更新記錄點和根據所選選項更新index狀態。

這句話意味著該項操作會影響兩件事:提交的記錄 和 當前工作區中的文件狀態。

3. 環境說明

為了簡化演示,本次使用master分支。master分支初始狀態為下圖所示:

詳解IDEA Git Reset 選項說明

本篇各個選項的效果演示均在“回退到版本1”這個需求下進行。

詳解IDEA Git Reset 選項說明

彈出選項框

詳解IDEA Git Reset 選項說明

4. 各選項效果說明

4.1 Soft

Soft選項:在選擇的回退點之后的所有更改將會保留并被git追蹤下來。這就意味著可以在 Version Control 的 Local Changes 面板中查看到它們。

創建新文件demo.txt 并index。使得demo.txt文件能夠被git追蹤版本。

詳解IDEA Git Reset 選項說明

詳解IDEA Git Reset 選項說明

此時我們是在版本2的工作區基礎上進行創建的demo.txt,此時我們想要回退到版本1,并使用Soft模式回退?;赝说慕Y果如下:

詳解IDEA Git Reset 選項說明

4.2 Mixed

Mixed模式:在選擇的回退點之后的所有更改將會保留但不會被git追蹤下來。

創建新文件demo.txt 并index。使得demo.txt文件能夠被git追蹤版本。

詳解IDEA Git Reset 選項說明

詳解IDEA Git Reset 選項說明

此時我們是在版本2的工作區基礎上進行創建的demo.txt,此時我們想要回退到版本1,并使用Mixed模式回退。效果如下:

詳解IDEA Git Reset 選項說明

4.3 Hard

Hard模式:在選擇的回退點之后的所有更改都會被丟棄。(包括被追蹤的和已提交的文件)

在版本2基礎上新增文字,形成未提交的版本3.

詳解IDEA Git Reset 選項說明

回退到版本1,以Hard模式。

詳解IDEA Git Reset 選項說明

4.4 Keep

Keep模式:在選擇的回退點之后的所有已提交的更改會被丟棄。但本地修改的會被完整地保存下來。

在版本2基礎上新增文字,形成未提交的版本3.

詳解IDEA Git Reset 選項說明

選擇了Keep模式進行回退到版本1的效果如下:

詳解IDEA Git Reset 選項說明

說明:上圖出現了Git Reset Problem對話框是因為Keep模式會保留工作區修改的內容,所以在回退到指定的提交點后,Idea接下來要處理就是這些在工作區修改的內容,所以詢問用戶是否有必要保留這些內容。如果沒必要保留,就完全可以Hard reset;如果有必要,通常情況下下一步就會需要解決沖突問題。

Hard Reset效果如 4.3 所示,點擊Smart Reset后效果如下:

詳解IDEA Git Reset 選項說明

沒錯,這里的stash 和 unstash 都是自動完成的。

說明:用戶也可以自己手動 stash 和 unstash操作,類似壓棧和彈棧操作。這一機制在“暫時不想提交現已修改的,但現在必須馬上在未修改之前的版本上著手開發另一套事情”的尷尬場景下,可以幫助我們有一個解決方法。這一概念像CPU被中斷后如何保存中斷現場,在處理完其他任務后,能夠恢復當時現場。這里也是:當前開發版本被中斷后如何保存當前未提交內容,在開發完成其他事情后,再恢復到這些內容。

5. 總結

Soft:在選定提交點之后所做的所有更改都將被暫存(這意味著可以到 Version Control 窗口(Alt+9)的Local Changes 選項卡,以便您可以查看它們,并在必要時稍后提交)。

Mixed:在所選提交之后所做的更改將被保留,但不會暫存以進行提交。

Hard:在所選提交之后所做的所有更改都將被丟棄(已暫存的和已提交的)。

Keep:在選定的提交之后所做的提交更改將被丟棄,但本地更改將保持不變。

如果需要使用IDEA 進行版本回退可以訪問 IDEA git分支回退指定的歷史版本

到此這篇關于詳解IDEA Git Reset 選項說明的文章就介紹到這了,更多相關IDEA Git Reset 選項內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: IDEA
相關文章:
主站蜘蛛池模板: 鸡东县| 三门峡市| 民乐县| 祁东县| 长海县| 搜索| 三河市| 准格尔旗| 华蓥市| 北流市| 义马市| 永城市| 奉贤区| 徐水县| 新乐市| 富裕县| 石景山区| 古浪县| 利川市| 石城县| 肃北| 宾阳县| 突泉县| 金湖县| 南京市| 兴山县| 南康市| 兰考县| 崇阳县| 寻乌县| 佳木斯市| 于都县| 出国| 聂荣县| 阳信县| 邢台县| 炎陵县| 长治县| 菏泽市| 华阴市| 宁津县|