【Git教程】04.回滾

大綱

恢復

恢復是咱們進行了修改,在沒有進行commit以前,將文件恢復到最近一次commit的狀態。
首先咱們的文件保持在最近一次commit以後,全勾的狀態。
image.png
而後咱們進行修改
image.png
咱們遇到一些狀況,好比:
一、有些重要的東西被刪除了,且沒法經過ctrl+z恢復。
二、需求已經變動,代碼要先回到原來的版本。
三、編寫的代碼是錯誤的,但已經跟原文件差異過大,要恢復。
恢復方式
一、到線上倉庫去複製以前版本的內容到本地,但有時咱們並無上傳。
二、git提供的恢復功能。git

恢復功能Revert
項目目錄右鍵 => TortoiseGit => Revert
image.png
選擇要恢復的文件,點擊OK。
image.png
恢復成功。
image.pnggithub

回滾

回滾是將當前的版本切換會歷史的某個版本
使用場景
一、新版本爆發了很嚴重的bug,須要回滾到以前的穩定版本。
二、咱們要查看歷史記錄,瞭解以前的版本的狀況。
操做
目錄右鍵 => TortoiseGit => Show log
image.pngthis

日誌頁面
image.png
能夠查詢到該分支全部的提交狀況。
每次提交都對應一個版本。使用SHA-1做爲版本號。
標紅的就是咱們當前所處的版本。spa

選擇一個版本,右鍵 => Reset … to this
image.png3d

回滾頁面
image.png
選擇Hard模式。會將代碼回滾到這個版本。
至於Soft和Mixed模式,並不會回滾代碼,而只是把commit版本改回那個版本。日誌

回滾成功。
image.pngcode

此時的代碼就是當時那個版本的了。
這種回滾會將該版本以後的全部版本都刪除
查看Show Log就是下面的狀況。
image.pngblog

因此要回到最新的版本,須要從遠程倉庫拉取。
回滾後進行修改形成的衝突,與03_衝突所描述問題是一致的,直接搞定便可。ip

直接獲取歷史版本
選擇 Export this version…,導出歷史版本到zip文件。
image.png
image.pngget

練習

模擬恢復和回滾的操做。


github: https://github.com/lvancer/course_git

相關文章
相關標籤/搜索