【轉】git reset HEAD 與 git reset --hard HEAD的區別


git reset HEAD 與 git reset --hard HEAD的區別

git reset HEAD 是將咱暫存區和HEAD的提交保持一致

git reset --hard HEAD 是將工作區、暫存取和HEAD保持一致

測試 git reset HEAD

1. 創建一個readme.md 的文件

 

2 創建一個commit 執行以下命令

git add -A

git commit -m "create readme.md test file"

查看提交

git log --all --graph --oneline

 

3 添加暫存取的文本

 

 

執行命令,保持到暫存取

git add -A

執行命令,比較暫存取和HEAD的區別

git diff --cached

 

 

4 添加工作區的的內容

 

 

執行命令,比較工作區和暫存取的不同

git diff 

 

 

5 執行命令

git reset HEAD

 

 

比較工作區和暫存區的內容

執行命令

git diif

 

 

比較暫存取和HEAD的內容

執行命令 

git diff --cached

 

 

發現暫區和HEAD沒有區別

說明 git reset HEAD 會把暫存區恢復成HEAD

執行命令

git add -A

添加到暫存區

執行

git diff --cached

 

 

發現暫存區添加了兩行內容

7

工作區添加一行文字

 

 

執行

git reset --hard HEAD

 

 

執行

git diff

git diff --cached

發現工作區、暫存區和HEAD沒有區別

 

 

說明執行 git reset --hard HEAD 命令 會將工作區和暫存區恢復成HEAD


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM