最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Git版本回退之reset和revert使用詳解

 更新時間:2025年04月03日 08:40:28   作者:chengliang666  
這篇文章主要介紹了Git版本回退之reset和revert使用,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教

Git版本回退之reset和revert

在開發(fā)過程中,可能會遇到過錯誤提交的情況。這種情況下,先不要著急,可以通過以下兩個命令來幫助你優(yōu)雅的實現(xiàn)版本回退。

git reset

假如現(xiàn)在有如下幾個提交:

其中:A 和 B 是正常提交,而 C 和 D 是錯誤提交。現(xiàn)在想把 C 和 D 回退掉。而此時HEAD 指針指向 D 提交(5lk4er)。我們只需將 HEAD 指針移動到 B 提交(a0fvf8),即可。

這個時候就可以使用git reset 命令:

git reset --hard a0fvf8 // 將HEAD指針移動到B提交點
git push origin HEAD --force // 將提交強制推到遠程倉庫

此時HEAD指針就會移動到 B 提交下:

采用這種方式回退代碼會使 HEAD 指針往回移動,從而會失去之后的提交信息且不可恢復,所以要慎重使用。

git revert

git revert會創(chuàng)建一個新的版本,且HEAD指針會指向這個新生成的版本,原來錯誤提交信息也可以保留。

可以通過用git revert 命令逐個回退:

git revert 5lk4ergit revert 76sdeb

回退版本少的可以逐個回退,多的話就要批量回退了:

git revert OLDER_COMMIT^..NEWER_COMMIT

通過對比發(fā)現(xiàn),git reset 會失去后面的提交,而 git revert 是通過反做的方式重新創(chuàng)建一個新的提交,而保留原有的提交。所以應盡量使用 git revert 命令來回退版本,慎重使用 git reset 命令。

補充

假如現(xiàn)在有三個提交,不巧的是那個錯誤的提交剛好位于中間

此時直接使用 git reset 命令將 HEAD 指針重置到 A 提交顯然是不行的,因為 C 提交是正確的,需要保留的。

正確的做法:先把 C 和 B 提交全部回退,再使用 cherry-pick 命令將 C 提交重新再生成一個新的提交 C’’,這樣就實現(xiàn)了將 B提交回退的需求。

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • IDEA配置leetcode插件的步驟

    IDEA配置leetcode插件的步驟

    這篇文章主要介紹了IDEA配置leetcode插件的步驟,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-04-04
  • wap開發(fā)中如何有效的利用緩存減少消息的傳送量

    wap開發(fā)中如何有效的利用緩存減少消息的傳送量

    由于WAP信道帶寬的限制,我們在編寫WAP應用的時候都希望最大限度地減少消息的傳送量。
    2010-06-06
  • Git撤回合并提交的多種方法

    Git撤回合并提交的多種方法

    在日常開發(fā)中,Git 的合并操作(git merge)是我們經(jīng)常使用的功能,然而,有時合并后可能會發(fā)現(xiàn)問題,需要撤回合并,本文將基于一次實際場景,詳細介紹如何撤回未推送到遠程倉庫的合并提交,需要的朋友可以參考下
    2025-10-10
  • Visual?Studio實用調(diào)試技巧大全

    Visual?Studio實用調(diào)試技巧大全

    這篇文章主要給大家介紹了關(guān)于Visual?Studio實用調(diào)試技巧的相關(guān)資料,如果你還沒有使用過這些技巧,希望這篇博文能幫你發(fā)現(xiàn)它們,它們學起來很容易,能幫你節(jié)省很多時間,需要的朋友可以參考下
    2023-06-06
  • Git用戶名與郵箱的配置指南

    Git用戶名與郵箱的配置指南

    在使用 Git 進行版本控制時,每一次代碼提交(commit)都會記錄提交者的身份信息,這些信息不僅用于追蹤代碼變更歷史,還在團隊協(xié)作、代碼審查和開源貢獻中發(fā)揮著重要作用,所以本文介紹了Git 用戶名與郵箱配置的詳細指南,需要的朋友可以參考下
    2025-10-10
  • Postman配置多環(huán)境請求地址的實現(xiàn)

    Postman配置多環(huán)境請求地址的實現(xiàn)

    本文主要介紹了Postman配置多環(huán)境請求地址的實現(xiàn),文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-01-01
  • 解決Unable to access ''https://gitee.com/自己的項目/'': Could not resolve host: gitee.com問題

    解決Unable to access ''https://gitee.com/自己的項目/'': Could not r

    這篇文章主要介紹了解決Unable to access 'https://gitee.com/自己的項目/': Could not resolve host: gitee.com問題,需要的朋友可以參考下
    2020-09-09
  • 微信小程序中input組件為什么設置readonly只讀屬性沒有作用(失效)?

    微信小程序中input組件為什么設置readonly只讀屬性沒有作用(失效)?

    本文總結(jié)了微信小程序中input組件設置readonly只讀屬性失效的原因,并介紹了三種核心解決方案:使用disabled屬性替代、事件阻止和CSS控制,同時,還推薦了替代方案和最佳實踐建議,并指出了注意事項
    2026-01-01
  • 詳解Hadoop2.7.2 編譯64位源碼

    詳解Hadoop2.7.2 編譯64位源碼

    這篇文章主要介紹了Hadoop2.7.2 編譯64位源碼的相關(guān)知識,本文給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-02-02
  • conda常用命令整理及用法詳解

    conda常用命令整理及用法詳解

    這篇文章主要為大家介紹了conda常用命令整理及用法詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-01-01

最新評論

乐东| 泰和县| 金秀| 汉寿县| 昌平区| 嫩江县| 霍州市| 绿春县| 金塔县| 苏州市| 丰原市| 广宁县| 汶上县| 延吉市| 达拉特旗| 白城市| 鄂州市| 石楼县| 张家港市| 如东县| 紫阳县| 罗江县| 泰兴市| 广西| 屏东县| 紫阳县| 龙陵县| 金川县| 太仓市| 邹平县| 木里| 融水| 黎城县| 乳山市| 云霄县| 浏阳市| 尼玛县| 新沂市| 庄河市| 黄浦区| 黔东|