Git_4_版本操作

本Git系列內(nèi)容更多是基于廖雪峰老師的Git教程的個人筆記富岳、總結(jié)和擴展太颤,如有錯誤,請多多指正胸梆。

現(xiàn)在我們已經(jīng)學(xué)會了如何使用Git提交修改文件,我們可以繼續(xù)嘗試來修改1.txt中的內(nèi)容

hello git
hello world
hello windows

保存之后提交修改

$ git add 1.txt
$ git commit  -m '1.txt_v3.0'

就這樣须板,我們就進行了一次提交文件修改的操作碰镜,在你之后使用Git的過程中,你可能會一次又一次的向Git提交你的新文件及文件修改习瑰,在每一次進行文件操作時绪颖,Git會自動生成一個又一個快照(commit),一旦文件操作混亂或誤刪文件,我們都可以通過commit來將文件修改操作回到修改之前的那個版本甜奄,至此柠横,我們一共對1.txt進行了3次文件修改操作

//第一次
hello git
//第二次
hello git
hello world
//第三次
hello git
hello world
hello windows

在大型的文件修改提交中,我們不可能記住每一次修改的內(nèi)容课兄,Git此時就可以告訴我們文件操作的歷史記錄
$ git log
回車之后輸出

$ git log
commit d07e24d1e5166d259fec46b20a04714f69c00a6f (HEAD -> master)
Author: eivx <elvlxla@gmail.com>
Date:   Wed Apr 11 13:49:24 2018 +0800

    1.txt_v3.0

commit df293701520108dfcebf772e90902f60f46d57f6
Author: eivx <elvlxla@gmail.com>
Date:   Wed Apr 11 13:38:56 2018 +0800

    1.txt_v2.0

commit a545e4da55403ae64abde819534f4975cad98054
Author: eivx <elvlxla@gmail.com>
Date:   Wed Apr 11 13:29:06 2018 +0800

    1.txt_v1.0

git log命令顯示從最近到最遠的文件操作日志牍氛,我們可以看到我們提交了3次文件的修改操作,最近一次是1.txt_v3.0 烟阐,其次是1.txt_v2.0,最早是1.txt_v1.0搬俊,如果想要 簡化日志內(nèi)容,我們可以在git log后添加參數(shù)--pretty=oneline
$ git log --pretty=oneline

$ git log --pretty=oneline
d07e24d1e5166d259fec46b20a04714f69c00a6f (HEAD -> master) 1.txt_v3.0
df293701520108dfcebf772e90902f60f46d57f6 1.txt_v2.0
2e4995481e3bb5ddddd93e3143cce864d837a53f (origin/master) 4.txt_v1.0

每一行起始地方都有一大行字符蜒茄,這其實是版本號(commit id),很長的版本號保證了很多人一起提交文件時版本號不會沖突唉擂。

現(xiàn)在我們想回退到上一個版本1.txt_v2.0,首先檀葛,Git想要執(zhí)行回退版本操作就必須知道當(dāng)前版本是哪個版本玩祟,在Git中,HEAD表示當(dāng)前版本屿聋,也就是最新提交的1.txt_v3.0卵凑,上一個版本就是HEAD^,上上個版本就是HEAD^^,如果回退版本比較多,我們也可以通過HEAD~100來回退到100版本之前胜臊。

現(xiàn)在勺卢,回退到1.txt_v2.0

$ git reset --hard HEAD^
HEAD is now at d07e24d 1.txt_v2.0

現(xiàn)在我們打開1.txt,就可以看到內(nèi)容已經(jīng)回退到上一個版本

hello git
hello world

如果我們現(xiàn)在查看日志

$ git log 
commit a545e4da55403ae64abde819534f4975cad98054
Author: eivx <elvlxla@gmail.com>
Date:   Wed Apr 11 13:29:06 2018 +0800

    1.txt_v2.0

commit 2e4995481e3bb5ddddd93e3143cce864d837a53f (origin/master)
Author: eivx <elvlxla@gmail.com>
Date:   Tue Apr 10 21:42:05 2018 +0800

    1.txt_v1.0

我們可以看到原先最新的那個版本1.txt_v3.0不見了,如果后悔了想要恢復(fù)之前那個最新版本象对,就可以把Git bash窗口往上翻黑忱,找到之前執(zhí)行過的git log命令顯示的1.txt_v3.0版本號,我們就可以通過這個版本號回溯操作(版本號無需輸全,輸入前幾位Git就會自動幫我們補齊后面的版本號)

$ git reset --hard d07e24d
HEAD is now at d07e24d 1.txt_v3.0

現(xiàn)在可以打開1.txt文本看一下內(nèi)容

hello git
hello world
hello windows

現(xiàn)在文件已經(jīng)恢復(fù)到之前那個最新版本了

如果說,你的窗口關(guān)掉了甫煞,你找不到之前1.txt_v3.0的版本號了菇曲,Git還為你提供了git reflog命令,可以供你查看你的每一次命令
$ git reflog
我們可以在輸出內(nèi)容中找到關(guān)于1.txt_v3.0的這一行
d07e24d (HEAD -> master) HEAD@{4}: commit: 1.txt_v3.0
我們現(xiàn)在找到了1.txt_v3.0的版本號抚吠,于是就可以通過git reset --hard d07e24d來恢復(fù)文件了

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末常潮,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子楷力,更是在濱河造成了極大的恐慌喊式,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,743評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件萧朝,死亡現(xiàn)場離奇詭異岔留,居然都是意外死亡,警方通過查閱死者的電腦和手機检柬,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,296評論 3 385
  • 文/潘曉璐 我一進店門献联,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人何址,你說我怎么就攤上這事里逆。” “怎么了用爪?”我有些...
    開封第一講書人閱讀 157,285評論 0 348
  • 文/不壞的土叔 我叫張陵运悲,是天一觀的道長。 經(jīng)常有香客問我项钮,道長班眯,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,485評論 1 283
  • 正文 為了忘掉前任烁巫,我火速辦了婚禮署隘,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘亚隙。我一直安慰自己磁餐,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 65,581評論 6 386
  • 文/花漫 我一把揭開白布阿弃。 她就那樣靜靜地躺著诊霹,像睡著了一般。 火紅的嫁衣襯著肌膚如雪渣淳。 梳的紋絲不亂的頭發(fā)上脾还,一...
    開封第一講書人閱讀 49,821評論 1 290
  • 那天,我揣著相機與錄音入愧,去河邊找鬼鄙漏。 笑死嗤谚,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的怔蚌。 我是一名探鬼主播巩步,決...
    沈念sama閱讀 38,960評論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼桦踊!你這毒婦竟也來了椅野?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,719評論 0 266
  • 序言:老撾萬榮一對情侶失蹤籍胯,失蹤者是張志新(化名)和其女友劉穎竟闪,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體芒炼,經(jīng)...
    沈念sama閱讀 44,186評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,516評論 2 327
  • 正文 我和宋清朗相戀三年术徊,在試婚紗的時候發(fā)現(xiàn)自己被綠了本刽。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,650評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡赠涮,死狀恐怖子寓,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情笋除,我是刑警寧澤斜友,帶...
    沈念sama閱讀 34,329評論 4 330
  • 正文 年R本政府宣布,位于F島的核電站垃它,受9級特大地震影響鲜屏,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜国拇,卻給世界環(huán)境...
    茶點故事閱讀 39,936評論 3 313
  • 文/蒙蒙 一洛史、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧酱吝,春花似錦也殖、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,757評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至崎岂,卻和暖如春捆毫,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背冲甘。 一陣腳步聲響...
    開封第一講書人閱讀 31,991評論 1 266
  • 我被黑心中介騙來泰國打工冻璃, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留响谓,地道東北人。 一個月前我還...
    沈念sama閱讀 46,370評論 2 360
  • 正文 我出身青樓省艳,卻偏偏與公主長得像娘纷,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子跋炕,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,527評論 2 349

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

  • GIT分布式版本控制系統(tǒng)最佳實踐 這篇文章來自于老男孩教育高級架構(gòu)師班12期的徐亮偉同學(xué)赖晶。 首先感謝老男孩架構(gòu)師班...
    meng_philip123閱讀 3,398評論 4 36
  • 一、電腦本地初始化一個倉庫 1. git init: 初始化一個電腦上本地倉庫 終端進入項目目錄辐烂,輸入: 該命令將...
    dragon_li閱讀 2,894評論 1 4
  • 大洋路真的是一個自帶濾鏡的地方遏插,不管怎么拍,藍天白云纠修,晚霞夕陽胳嘲,色彩都有著強大的自協(xié)調(diào)啊(?ò ? ó?) 所以感...
  • 悖論 我們都知道愛迪生發(fā)明電燈的事扣草,常常被人拿來勸慰說 “失敗是成功之母了牛,我們只要堅持做下去,總會成功的” 唯有善...
    欣與閱讀 66評論 0 0
  • 朝陽學(xué)區(qū)房630政策悄悄地被撤銷了辰妙。真正的朝令夕改鹰祸。不過,頒布的時候大張旗鼓密浑,為啥解除的時候這么安靜蛙婴?不想被發(fā)現(xiàn)?...
    呶呶的簡書閱讀 338評論 0 0