一、撤销修改(git add/rm 之前)
git checkout -- * //是撤销从上次提交之后所做的所有修改
git checkout -- filaname //是撤销从上次提交之后的单个文件的修改
二、git add/rm 之后,还未git commit
情况一:
从暂存区撤出
git reset HEAD <file> //reset 某个文件
git reset HEAD . //reset 所有
情况二:
如果是 git rm 的文件,需要执行下面的,把它撤回来,add 的文件不能用(用了会撤回修改,如果想撤回修改前的,也可以用下面的命令)
git checkout -- file_name
//注:如果执行 git checkout -- . 则会把之前add 更改的文件也给撤回了
三、撤销修改 git commit -m "" 、还未执行git push
1. 找到上次git commit的 id,找到你想撤销的commit_id
git log //查看日志
2. 完成撤销,同时将代码恢复到前一commit_id 对应的版本
git reset --hard commit_id //执行撤销
注:不保留commit 之前修改的代码,reset之后,代码回滚到上个版本
3.完成Commit命令的撤销,但是不对代码修改进行撤销,可以直接通过git commit 重新提交对本地代码的修改。
git reset commit_id //注释
注:保留commit之前修改的代码,撤销后,代码是修改后的状态,还能继续修改
四、对于已经push的版本,进行回退
1、第一步:
git reset --hard 版本号 //本地回退到指定的版本
2、第二步:
git push -f origin dev //将远程的也回退到指定版本
技术的发展日新月异,随着时间推移,无法保证本博客所有内容的正确性。如有误导,请大家见谅,欢迎评论区指正!
开源库地址,欢迎Star点亮:
GitHub:https://github.com/ITMingliang
Gitee: https://gitee.com/mingliang_it
GitLab: https://gitlab.com/ITMingliang
建群声明: 本着技术在于分享,方便大家交流学习的初心,特此建立【编程内功修炼交流群】,为大家答疑解惑。热烈欢迎各位爱交流学习的程序员进群,也希望进群的大佬能不吝分享自己遇到的技术问题和学习心得!进群方式:扫码关注公众号,后台回复【进群】。