git reset作用


 

git reset:

  1. 文件從暫存區回退到工作區,撤銷add

  2. 版本回退 

 

一:文件從暫存區回退到工作區,撤銷add

  如果想取消某個add的文件,可以使用該命令來進行撤銷操作

  撤消add:git reset 文件名

  撤消所有add的文件:git reset HEAD .

  撤消某個文件或文件夾:git reset HEAD 文件(夾)名

  把從cache中刪除的文件,重新添加到cache中: git add -f 文件名

 

   eg:今天add文件的時候,不小心使用了git add .  將配置文件等也給add到緩存區了,那么如何從緩存區撤銷我們不想add的文件呢? 使用命令: git  reset  fileName

  但是,如果不小心使用了git rm --cached fileName清除緩存,此時緩存區中的文件已經被清除了,我們需要將撤銷的文件再add到緩存區,接下來使用git reset fileName命令

 

 

二:版本回退 

 

1. git reset  --mixed commit的id  

還原到commit的id,(git reset 默認是mixed )此commit之后的文件變成modified紅色(即還沒add的狀態)

 

2. git reset  --soft commit的id 

還原到commit的id,此commit之后的文件變成modified綠色(即add(勾選中)的狀態)

 

3. git reset --hard commit的id 

還原到commit的id,此commit之后的文件都被還原

 

三:對reset進行撤銷

 

睡了一覺,第二天醒來,我們后悔了,又想回到reset之前的狀態,該怎么做呢?

Git提供了一個命令git reflog用來記錄每一次的操作,及時是reset掉的commit記錄,reflog都會有記錄,所以只需找到對應的commitId,以便確定要回到的哪個版本

 


免責聲明!

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



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