git_撤销操作

1.撤销提交但是未push 的代码

git log 先找到要撤回到的那个地方的id,比如要撤回到oringin/master,就用oringin/master 的id (命令符q 结束log)

git_撤销操作_第1张图片

第一种: git reset --hard id     (完成撤销,同时将代码恢复到前一commit_id 对应的版本(oringin/master))

git_撤销操作_第2张图片


第二种: git reset  --soft id     (完成Commit命令的撤销,提交前修改的文件还在,还会回到暂存区)

git_撤销操作_第3张图片
 git reset  id


2.撤销提交而且push 的代码

git_撤销操作_第4张图片
push过的代码

第一步:git reset --soft a8ae4e13e43071e222976405e46defabcf1698ac 保留当前工作区,以便重新提交 (不会删除修改的代码), 但是远程分支还在的 撤销不了


git_撤销操作_第5张图片
git reset --soft  id

第二步:git push origin 远程分支名 --force  强制提交当前版本号,以达到撤销版本号的目的: 

(例如: git push origin testPushAndReset --force)将远程分支强制与本地分支同步


git_撤销操作_第6张图片
git push --force

你可能感兴趣的:(git_撤销操作)