天天看点

git 撤销操作

正常流程:

git add .
git commit -m "comment"
git push           

查看修改

已修改未暂存,代码在工作区
git diff

已暂存未提交,代码在暂存区
git diff --cached

已提交未推送,代码在本地仓库
git diff master origin/master           

撤销修改

代码还没 add, 代码在工作区
git checkout . 或者
git reset --hard

已暂存未提交,代码在暂存区
git reset
git checkout . 或者
git reset --hard

已提交,未推送,代码在本地仓库
git reset --hard origin/master

已经推送,代码已经在远程仓库了
所以首先要把本地仓库代码撤销,然后再强制推送
git reset --hard HEAD^  // 本地仓库撤销操作
git push -f             // 强制推送到远程仓库