恢復是咱們進行了修改,在沒有進行commit以前
,將文件恢復到最近一次commit
的狀態。
首先咱們的文件保持在最近一次commit以後,全勾的狀態。
而後咱們進行修改
咱們遇到一些狀況,好比:
一、有些重要的東西被刪除
了,且沒法經過ctrl+z恢復。
二、需求已經變動
,代碼要先回到原來的版本。
三、編寫的代碼是錯誤
的,但已經跟原文件差異過大,要恢復。
恢復方式:
一、到線上倉庫去複製以前版本的內容到本地,但有時咱們並無上傳。
二、git提供的恢復功能。git
恢復功能:Revert
。
項目目錄右鍵
=> TortoiseGit
=> Revert
。
選擇要恢復的文件,點擊OK。
恢復成功。
github
回滾是將當前的版本切換會歷史
的某個版本
。
使用場景
一、新版本爆發了很嚴重的bug,須要回滾到以前的穩定版本。
二、咱們要查看歷史記錄,瞭解以前的版本的狀況。
操做:
目錄右鍵
=> TortoiseGit
=> Show log
this
日誌頁面:
能夠查詢到該分支全部的提交狀況。
每次提交都對應一個版本。使用SHA-1做爲版本號。
標紅的就是咱們當前所處的版本。spa
選擇一個版本,右鍵
=> Reset … to this
。
3d
回滾頁面:
選擇Hard模式
。會將代碼回滾到這個版本。
至於Soft和Mixed模式,並不會回滾代碼,而只是把commit版本改回那個版本。日誌
回滾成功。
code
此時的代碼就是當時那個版本的了。
這種回滾會將該版本以後的全部版本都刪除
。
查看Show Log就是下面的狀況。
blog
因此要回到最新的版本,須要從遠程倉庫拉取。
回滾後進行修改形成的衝突
,與03_衝突所描述問題是一致的,直接搞定便可。ip
直接獲取歷史版本:
選擇 Export this version…
,導出歷史版本到zip文件。
get
模擬恢復和回滾的操做。