Git 撤銷操作

2.4 撤銷操作

場景一:在工作區(qū)亂七八糟改一通想要還原捂刺,并沒有添加到暫存區(qū)。

在寫代碼的時(shí)候爽彤,如果沒有提前將整個(gè)邏輯理清楚就開始修改之前的代碼擒权,那么大多數(shù)情況是到最后自己都不知道寫的啥,這時(shí)候就會(huì)想要回到自己修改之前的那個(gè)版本祥国。

前提是一直在工作區(qū)進(jìn)行修改昵观,并沒有添加到暫存區(qū)。

解決思路:

在修改之前在分支倉庫中進(jìn)行一次備份

使用 git status 查詢狀態(tài)舌稀,如果本地工作區(qū)與分支倉庫不同步(本地工作區(qū)有文件修改了咩有提交),參照 2.2 節(jié)先同步啊犬;

修改之后,不滿意壁查,只需將之前在分支倉庫中的(該文件/整個(gè)目錄)備份取出來替換工作區(qū)內(nèi)容即可觉至。

具體操作:

$ git checkout--

說明:由于這里沒有添加到暫存區(qū),所以該指令表示將分支倉庫中的(該文件/整個(gè)目錄)備份取出來替換工作區(qū)的內(nèi)容潮罪。

場景二:將工作區(qū)修改過內(nèi)容添加到暫存區(qū)后又對工作區(qū)文件進(jìn)行修改想要還原

場景二的標(biāo)題有點(diǎn)長康谆,拆分一下做了以下幾件事情:

對工作區(qū)內(nèi)容 readme.txt 進(jìn)行修改 —— 狀態(tài)1领斥;

將修改后的文件 readme.txt 添加到暫存區(qū),此時(shí)沒有提交到分支倉庫 —— 狀態(tài)2嫉到;

再次對工作區(qū)內(nèi)容 readme.txt 進(jìn)行修改 —— 狀態(tài)3。

現(xiàn)在想要將狀態(tài)3撤回到原始狀態(tài)月洛,我們分析下如何做:

狀態(tài)3 撤回到狀態(tài)2

狀態(tài)2 對 readme.txt 進(jìn)行修改并添加到暫存區(qū)

狀態(tài)3 對 readme.txt 進(jìn)行修改并添加到暫存區(qū)何恶,再次修改 readme.txt

// $ git checkout-- $ git checkout-- readme.txt

狀態(tài)2 撤回到狀態(tài)1

狀態(tài)1 對 readme.txt 進(jìn)行修改

狀態(tài)2 對 readme.txt 進(jìn)行修改并添加到暫存區(qū)

// $ gitresetHEAD$ gitresetHEADreadme.txt

狀態(tài)1 撤回到 原始狀態(tài)

原始狀態(tài) readme.txt 與分支倉庫的備份一毛一樣

狀態(tài)1 對 readme.txt 進(jìn)行修改

其實(shí)到這里已經(jīng)回到了場景1遇到的情況:只在工作區(qū)進(jìn)行修改,并沒有添加到暫存區(qū)嚼黔,如何還原细层?

// $ git checkout-- $ git checkout-- readme.txt

作者這里已經(jīng)盡可能的把情況說的簡單點(diǎn),無奈言語顯得有點(diǎn)脆弱唬涧,還需要自己實(shí)踐敲一篇試驗(yàn)一下疫赎,記住,每次撤回到上一個(gè)狀態(tài)時(shí)使用 git status 查看下當(dāng)前狀態(tài)碎节。

場景三:在工作區(qū)修改了文件捧搞,不僅添加到了暫存區(qū),還提交到了分支倉庫中,想要還原怎么辦

這種情形反而更簡單胎撇,提交到分支庫介粘,將相當(dāng)于對當(dāng)前狀態(tài)做了一個(gè)備份放到分支倉庫中取代了最新的備份,我們只需要將分支倉庫中上一個(gè)備份取出來替代工作區(qū)內(nèi)容即可晚树。

詳細(xì)內(nèi)容在 2.4 節(jié)已經(jīng)講解過姻采,這里簡要略過。

查看分支倉庫版本備份信息

$ git log--pretty=oneline

使用 git reset 指令回到上一個(gè)版本

$ gitreset--hard 7e46747

結(jié)論

又到了總結(jié)時(shí)間爵憎,本節(jié)以實(shí)際場景觸發(fā)慨亲,考慮到所有需要撤回的場景,需要多加練習(xí)宝鼓。

場景1:修改了工作區(qū)內(nèi)容沒有添加到暫存區(qū)撤回操作巡雨;

場景2:修改了工作區(qū)添加到暫存區(qū)又修改了該文件撤回操作(詳細(xì)介紹三步自操作);

場景3:修改了工作區(qū)內(nèi)容添加到暫存區(qū)又提交到分支倉庫后撤回操作席函。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末铐望,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子茂附,更是在濱河造成了極大的恐慌正蛙,老刑警劉巖,帶你破解...
    沈念sama閱讀 222,464評(píng)論 6 517
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件营曼,死亡現(xiàn)場離奇詭異乒验,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)蒂阱,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,033評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門锻全,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人录煤,你說我怎么就攤上這事鳄厌。” “怎么了妈踊?”我有些...
    開封第一講書人閱讀 169,078評(píng)論 0 362
  • 文/不壞的土叔 我叫張陵了嚎,是天一觀的道長。 經(jīng)常有香客問我廊营,道長歪泳,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,979評(píng)論 1 299
  • 正文 為了忘掉前任露筒,我火速辦了婚禮呐伞,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘慎式。我一直安慰自己伶氢,他們只是感情好假哎,可當(dāng)我...
    茶點(diǎn)故事閱讀 69,001評(píng)論 6 398
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著鞍历,像睡著了一般舵抹。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上劣砍,一...
    開封第一講書人閱讀 52,584評(píng)論 1 312
  • 那天惧蛹,我揣著相機(jī)與錄音,去河邊找鬼刑枝。 笑死香嗓,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的装畅。 我是一名探鬼主播靠娱,決...
    沈念sama閱讀 41,085評(píng)論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼掠兄!你這毒婦竟也來了像云?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 40,023評(píng)論 0 277
  • 序言:老撾萬榮一對情侶失蹤蚂夕,失蹤者是張志新(化名)和其女友劉穎迅诬,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體婿牍,經(jīng)...
    沈念sama閱讀 46,555評(píng)論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡侈贷,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,626評(píng)論 3 342
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了等脂。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片俏蛮。...
    茶點(diǎn)故事閱讀 40,769評(píng)論 1 353
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖上遥,靈堂內(nèi)的尸體忽然破棺而出搏屑,到底是詐尸還是另有隱情,我是刑警寧澤露该,帶...
    沈念sama閱讀 36,439評(píng)論 5 351
  • 正文 年R本政府宣布睬棚,位于F島的核電站,受9級(jí)特大地震影響解幼,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜包警,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,115評(píng)論 3 335
  • 文/蒙蒙 一撵摆、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧害晦,春花似錦特铝、人聲如沸暑中。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,601評(píng)論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽鳄逾。三九已至,卻和暖如春灵莲,著一層夾襖步出監(jiān)牢的瞬間雕凹,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,702評(píng)論 1 274
  • 我被黑心中介騙來泰國打工政冻, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留枚抵,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 49,191評(píng)論 3 378
  • 正文 我出身青樓明场,卻偏偏與公主長得像汽摹,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個(gè)殘疾皇子苦锨,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,781評(píng)論 2 361

推薦閱讀更多精彩內(nèi)容