git教程之回到過去,版本對比


回到回去

git reset 命令的選項

1.git reset --mixed HEAD~ (默認)

-移動HEAD的指向,將其指向上一個快照

-將HEAD移動后指向的快照回滾到暫存區域

2.git reset --soft HEAD~

-移動HEAD的指向,將其指向上一個快照(相當於撤銷commit)

3.git reset --hard HEAD~

-移動HEAD的指向,將其指向上一個快照

-將HEAD移動后指向的快照回滾到暫存區域

-將暫存區域的文件還原到工作目錄

 

 

reset 回滾到指定快照

git reset id號(建議是5位)

當還原到最老id時,如果知道最新id 可以回滾到最新快照,即使他已經被舊版本覆蓋(hard)

 

reset 回滾個別文件

git reset 版本快照 文件名/路徑(忽略HEAD指針的改變)

 

版本對比

1.比較暫存區域和本地工作目錄

git diff

diff --git a/README.md    b/README.md
#表示分布把暫存目錄和工作目錄的文件放置在自動生成的a/b文件夾下,比較兩個文件夾

---a/README.md #暫存區域
+++b/README.md #工作目錄 新(+)
搜索
#/+關鍵詞 從上往下搜索
#?+關鍵詞 從下往上搜索
q退出

比較兩個歷史快照:

git diff 快照ID1 快照ID2

 

比較暫存區域和git倉庫的快照

git diff --cached 快照id

修改最后一次提交

1.在實際開發過程中,你可能遇到以下兩種情景:

情景1:版本剛一提交(commit)到倉庫,突然想起漏掉兩個文件還沒有(add)

情景2:版本剛一提交(commit)到倉庫,突然想起版本說明寫的不夠全面,無法彰顯你本次修改的重 大意義

 

執行帶 --amemd 選項的 commit提交命令,Git 就會''更正''最近的一次提交

git commit --amend

刪除文件

git rm 文件名

該命令刪除的只是工作目錄和暫存區域的文件,也就是取消跟蹤,在下次提交的時候不納入版本管理。

然后soft HEAD 回到過去

 

重命名文件

git mv 舊文件名 新文件名

 

 

 

 

 


免責聲明!

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



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