git系列之revert回滚

1. Git 使用cherry-pick"摘樱桃"

step 1: 本地切到远程分支,对齐要对齐的base分支,举例子 localmap

cpp 复制代码
git pull 
git reset --hard localmap 对应的commit id

step 2: 执行cherry-pick命令

cpp 复制代码
git cherry-pick abc123

这样就会将远程分支gq/localmap中哈希值为abc123的提交应用到本地分支localmap-dev上。

step 3:

全文搜索

cpp 复制代码
>>>>>>

处理冲突即可

2. Git 使用revert回滚已提交的commit

在git使用中如果提交错误的代码至远程服务器,可以使用git revert 命令回滚单次commit并且不影响其他commit。

回滚最新一次的提交记录: git revert HEAD

回滚前一次的提交记录 : git revert HEAD^

对历史上的commit回滚: git revert

回滚历史commit很容易产生文件冲突,需要做好冲突处理。

使用SourceTree进行commit revert

在准备revert 的commit上右键 选择 reverse commit。 revert命令与reset命令不同,是生成一次新的commit冲抵原来的commit, reset直接删除某些commit的内容。Revert历史上的commit 很容易产出文件冲突, 在这次回滚中,对于有冲突的文件都没有进行回滚,只将未产生文件冲突的文件进行了回滚。

确认生成的新commit编译成功,也没有文件冲突,可以push到服务器,完成回滚。

相关推荐
勤劳打代码43 分钟前
步步为营 —— Github Connection refused 分层诊断
github
寻月隐君1 小时前
深入解析 Rust 的面向对象编程:特性、实现与设计模式
后端·rust·github
ZZZKKKRTSAE2 小时前
快速上手Linux全局搜索正则表达式(grep)
linux·服务器·正则表达式
有谁看见我的剑了?2 小时前
stress 服务器压力测试的工具学习
服务器·学习·压力测试
有谁看见我的剑了?2 小时前
stress-ng 服务器压力测试的工具学习
服务器·学习·压力测试
余厌厌厌2 小时前
go语言学习 第9章:映射(Map)
服务器·学习·golang
waving-black3 小时前
利用frp和腾讯云服务器将内网暴露至外网(内网穿透)
linux·服务器·腾讯云·frp·内网穿透
stormsha3 小时前
Linux中su与sudo命令的区别:权限管理的关键差异解析
linux·运维·服务器·鸿蒙系统·ux·batch命令
养意4 小时前
git提交代码和解决冲突修复bug
git·bug
21号 17 小时前
9.进程间通信
linux·运维·服务器