git原理
Git的版本庫里存了很多東西,其中最重要的就是稱為stage(或者叫index)的暫存區,還有Git為我們自動創建的第一個分支master,以及指向master的一個指針叫HEAD。
git reset命令簡介
git reset用於回退代碼,具有三個參數--hard、--mixed、--soft。
回退單個文件
- git log
獲取需要回退的commit_id。
- git reset
git reset <commit_id> <file_path>
然后執行git status,會發現工作區和暫存區均有變化,提示需要進行git add和git commit,原因是git reset作用於文件時,只會修改暫存區。(版本庫肯定無法修改,因為只回退了一個文件,其他的文件並沒有回退,所以整個版本不能回退)
- git checkout
git checkout .
從暫存區恢復文件到工作區。