git-各種撤銷操作之reset和revert使用

一、使用場(chǎng)景

在使用git提交代碼的過(guò)程中,難免會(huì)出現(xiàn)失誤,而我們補(bǔ)救的方法就是撤銷,而常用的撤銷無(wú)非就兩個(gè)命令,reset和revert,那他們兩個(gè)如何使用以及區(qū)別是什么呢?

二、使用方法

1.png

先上一張圖片。
在提交代碼的過(guò)程中,無(wú)非就是add、commit和push,但不管是哪一步,都有可能出現(xiàn)提交錯(cuò)誤的情況,下面分別說(shuō)一下每一步的撤銷操作。

2.1.撤銷add之后的撤銷

git reset HEAD filename

2.2.撤銷commit之后的操作

2.2.1.從本次倉(cāng)庫(kù)回退到工作區(qū),保留工作區(qū)修改內(nèi)容,并清空緩存區(qū)內(nèi)容

git reset --mixed   //后面的--mixed可省略,默認(rèn)就是此方式。

2.2.2.從本地倉(cāng)庫(kù)回退到緩存區(qū)

git reset --soft

2.2.3.從本地倉(cāng)庫(kù)回退到工作區(qū),不保留工作區(qū)內(nèi)容,并清空緩存區(qū)內(nèi)容

git reset --hard   //慎用

2.3.撤銷push之后的操作

2.3.1.找到push之前commit提交時(shí)對(duì)應(yīng)的commitid,一般只需前六位即可。

git revert commitid

2.3.2.再次push

git push origin branch

2.4.再用一張圖總結(jié)一下

2.png

4.reset和revert的區(qū)別

reset的本質(zhì):reset的功能雖然是起到了撤銷commit的作用,但實(shí)質(zhì)上它是將HEAD的指向移動(dòng)了位置。如下圖。


3.png

revert:revert是一次新的commit,HEAD會(huì)繼續(xù)向前執(zhí)行。如下圖。


4.png
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • git常用命令 GIT常用命令備忘:http://stormzhang.com/git/2014/01/27/gi...
    新篇章閱讀 8,872評(píng)論 1 26
  • 其實(shí)使用git已經(jīng)有兩年多時(shí)間了,但是對(duì)Git的概念一直懵懵懂懂,平時(shí)常用的命令就那么幾個(gè),而且大部分的時(shí)候都是直...
    Claire_wu閱讀 664評(píng)論 0 5
  • 一、git簡(jiǎn)介 git是目前世界上被最廣泛使用的現(xiàn)代軟件版本管理系統(tǒng)。git本身亦是一個(gè)成熟并處于活躍開發(fā)狀態(tài)的開...
    s_在路上閱讀 3,148評(píng)論 0 10
  • 幾個(gè)月前她結(jié)婚了,我還蒙在鼓里。 1 初次認(rèn)識(shí)她時(shí),我 6 歲,她 4 歲。 具體怎么到她家的我不知道,只記得當(dāng)時(shí)...
    咸魚怪閱讀 485評(píng)論 5 0
  • 要讓事情改變,就得先改變自己;要讓事情變得更好,就得先讓自己變得更好。 一個(gè)人如果不先改正自己的缺點(diǎn)和不足之處,讓...
    中華煙酒商貿(mào)閱讀 210評(píng)論 0 0

友情鏈接更多精彩內(nèi)容