Git撤销上一次的提交已git push
腾讯云服务器低至38元/年,最新活动入口戳→: https://curl.qcloud.com/HDDBWVuJ
一、使用git reset撤销提交:
git reset 命令格式:
git reset [--soft | --mixed | --hard] []
------------------------------------------------
参数说明:
1. 参数--hard:git reset --hard ①替换引用的指向。引用指向新的提交ID。
②替换暂存区。替换后,暂存区的内容和引用指向的目录树一致。
③替换工作区。替换后,工作区的内容变得和暂存区一致,也和HEAD所指向的目录树内容相同。
2. 参数--soft:git reset --soft 只更改引用的指向,不改变暂存区和工作区。
只改变commit(指针指向),stage index 和 working directory 不变
3. 参数--mixed(默认该参数): git reset 更改引用的指向及重置暂存区,但是不改变工作区。
操作:
git reset --hard HEAD^
git push
------------------------------------------------
HEAD^指的是上一次提交,上上次是HEAD^^,简洁写法可以写成HEAD~2 ,HEAD~3,以此类推。
二、使用git revert撤销提交:
git revert 命令格式:
git revert [--[no-]edit] [-n] [-m parent-number] [-s] [-S[]] …
git revert (--continue | --skip | --abort | --quit)
操作:
git revert HEAD
git push
三、git reset和git revert区别:
revert撤销指定提交的修改,并生成一次新的提交,需要填写提交注释,保留以前的历史记录;
reset将HEAD指针指到指定提交,撤销的提交记录不会出现在历史记录中。
相关文章

扫码添加站长好友
多年IT从业经验
涉及网络、机房、服务器、网站建设等领域