关于git的撤销
撤销add
git add demo1
#撤销对demo1的git add 操作,并且该文件不会被删除
git reset HEAD demo1
撤销commit
根据commitId进行撤销
#查看commitID
git log
git reset --hard commitId
#返回到上个版本
git reset --hard HEAD^
#返回到n个版本,n为正整数
git reset --hard HEAD~n
commit的撤销都伴随本地文件的直接删除
误删后,想要恢复本地文件,关键是找到原来的commitID,再使用git reset --hard commitId
git reflog
会记录关于commit的操作,包括commit, reset, checkout等操作,还会记录下当时的commitId。
reset等操作丢失一个提交的时候,你总是可以把它找回来。除非你的操作已经被git当做垃圾处理掉了,一般是30天以后。
甚至可以通过这个方法将rm的文件给恢复