git reset --hard xxx ,git reset --soft xxx 與git revert xxx
三者作用都是用來撤銷某項操作,只是工作的領域和方式不同.
git reset --soft xxx
git reset --hard xxx
-
hard (修改版本庫籽懦,修改暫存區(qū)霜定,修改工作區(qū))
git revert xxx
-
revert
-- git revert 也是撤銷命令,區(qū)別在于reset是指向原地或者向前移動指針戏自,git revert是創(chuàng)建一個commit來覆蓋當前的commit,指針向后移動伤锚。
區(qū)別
git reset –-soft:回退到某個版本擅笔,只回退了commit的信息,不會恢復到index file一級。如果還要提交猛们,直接commit即可念脯;
git reset -–hard:徹底回退到某個版本,本地的源碼也會變?yōu)樯弦粋€版本的內(nèi)容弯淘,撤銷的commit中所包含的更改被沖掉绿店;
revert是撤銷某次提交,但是這次撤銷也會作為一次提交進行保存