鍍金池/ 問答/Linux  HTML/ 如何理解git中的快照?

如何理解git中的快照?

git中的快照應(yīng)該怎么理解?
每次修改提交的commit就是快照?

回答
編輯回答
尋仙

快照顧名思義就是相當(dāng)于一張照片,這個在git回滾的過程用得到,每次的commit就會形成一個id,這個id值就是你項目提交的快照,回滾的時候,找到這次id就能回滾到這次的commit的內(nèi)容。下面詳細(xì)解釋回滾的過程。

初始化之后查看狀態(tài),文件都是未追蹤狀態(tài)
圖片描述
提交一個文件之后再次查看狀態(tài)
圖片描述
將提交的這次操作commit
此時形成快照,git log之后生成一個唯一的commit的id值,這個id值是經(jīng)過計算得出來的,是唯一的
圖片描述
進(jìn)行修改之后再次commit
圖片描述
生成兩個commit的id
每次新的快照會放到最上邊
圖片描述
用git reset的方式回滾
--hard回滾本地的倉庫快照,覆蓋暫存區(qū)工作區(qū)
--soft只會回滾本地倉庫的快照,不會覆蓋暫存區(qū)工作目錄
--mixed(默認(rèn))回滾本地倉庫的快照,并且覆蓋暫存區(qū),但是不覆蓋工作目錄
之后跟上要回滾到的commit的id前幾位就可以了
圖片描述

2017年8月4日 15:19