Git - 撤销

参考链接: 如何在 Git 里撤销(几乎)任何操作

撤销一个“已公开”的改变
方法: git revert <SHA>

重置“本地的”修改
方法: git reset <last good SHA> 或 git reset --hard <last good SHA>

在撤销“本地修改”之后再恢复
方法: git reflog 和 git reset 或 git checkout


$ git revert

描述:
dev_1 远程分支, 现在要撤销最后一个 commit, 即回退到上一个 commit.

操作:
选中要撤销的那个 commit, 右击选中"提交回滚".
本地分支 dev_1 撤销了 commit, 然后推送到远端.
So, 该操作可以撤销远程分支.

1.1.png
1.2.png

$ git reset

描述:
dev_1 远程分支, 现在要撤销最后一个 commit, 即回退到上一个 commit.

操作:
选中要回退到的那个 commit, 右击选中"Reset dev_1 to this commit", 然后选择使用模式, 此处选择"强行合并”.
本地分支 dev_1 回退到上一个 commit, 但远程 dev_1 并没有变化.
So, 该操作不能回退远程分支.

2.1.png
2.2.png
2.3.png

使用模式介绍:
http://www.cnblogs.com/kidsitcn/p/4513297.html

软合并 (soft) : 本地源码不改变
混合合并 (mix) : 本地源码不改变
强行合并 (hard) : 本地源码改变

git reset --soft
git reset --mixed
git reset --hard

git reset --hard HEAD^ //回退到上个版本
git reset --hard HEAD^^ //回退到上上个版本
git reset --hard HEAD~100 //回退到前100个版本
git reset --hard 版本号 //回退到指定版本

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

友情链接更多精彩内容