Git回退到服务器某个版本正确姿势
2024-08-26 12:11:11
背景:
Git协作中,成员不可避免地会提交一些错误的版本,由于Git相比SVN引入了本地仓库,操作会相对复杂,以下为姿势分解
找一个源文件RspUtils.java,加上一行注释 //测试回退git服务器版本,然后Commit并Push,现在的版本记录如下(Mac版的SourceTree为例)
dd5f51f...就是有问题的版本,现在我们要回退到7a22c8f...版本,选中7a22c8f...版本,点击右键,弹出选项
选中,Reset master to this commit,这个就是reset命令啦
选择Hard模式,然后在当前主干上最新的版本记录上点击右键,继续选择Reset master to this commit
选择Soft模式
commit + push就完成服务器上版本回退了,最终的版本记录如下:
no message就是我最后commit的版本,由于没写注释,工具自动加的(实际工作中不写注释或注释写得看不懂是很不好的习惯,必须坚决改正)
注意事项: 从第1个图和最后一个图可以看到,在第1个图中,我有没提交的记录Uncommited Changes,经过reset hard之后丢失了,所以大家在回退版本时必须保持头脑清醒,慎用reset hard
整个姿势(原理)回顾:
reset - hard xxx 放弃本地的修改取服务器的覆盖掉本地的
rest -soft xxx将本地的指针指向主干最新那个版本
commit
push
最新文章
- Datazen安装
- 剑指Offer面试题:21.从上到下打印二叉树
- jQuery源代码学习之九—jQuery事件模块
- Angular SEO方案
- 新的博客已经启用,欢迎大家访问(402v.com)
- YII学习,实现基于数据库的后台登录,用户体系.
- Boosting算法简介
- Android4.3引入的UiAutomation新框架官方简介
- jdk之String
- MySQL 导入导出数据库、表
- nginx修改上传文件大小限制
- 使用HostAliases 添加pod 的/etc/hosts
- 并发编程——ConcurrentHashMap#transfer() 扩容逐行分析
- 学 Win32 汇编[28] - 跳转指令: JMP、JECXZ、JA、JB、JG、JL、JE、JZ、JS、JC、JO、JP 等
- ASP入门(八)-Request对象
- ActiveMQ集群方案
- iOS程序启动过程笔记
- 如何高效利用 GitHub
- obj比较
- Mathcad操作tips:2D绘图
热门文章
- 使用highcharts显示mongodb中的数据
- Node.js学习笔记(一):快速开始
- iOS开发-UI (一)常用控件
- iOS设置UITableView中Cell被默认选中后怎么触发didselect事件
- 修改/etc/resolv.conf又恢复到原来的状态?[转]
- FileOutputStream flush()
- eclipse中debug快捷方式
- Information:java: javacTask: 源发行版 1.8 需要目标发行版 1.8
- mysql 时间
- sqlmap基础使用