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到服务器,完成回滚。

相关推荐
誰能久伴不乏12 分钟前
深入理解 `poll` 函数:详细解析与实际应用
linux·服务器·c语言·c++·unix
winner888120 分钟前
告别“这个分支是干啥的?”:Git分支层级命名实战
git·git push -u·分支关联·层级分支命名
倔强的石头10623 分钟前
Linux 进程深度解析(二):进程状态、fork 创建与特殊进程(僵尸 与 孤儿)
linux·运维·服务器
小李小李无与伦比36 分钟前
使用Simiki,部署.md文档
linux·运维·服务器
做人不要太理性41 分钟前
【Linux系统】ELF 文件格式的硬核揭秘
java·linux·服务器
草根站起来1 小时前
局域网内网IP能不能申请SSL证书
服务器·tcp/ip·ssl
怀旧,1 小时前
【Linux系统编程】12. 基础IO(下)
linux·运维·服务器
真上帝的左手1 小时前
3. 代码管理-Git实战
git
松涛和鸣1 小时前
29、Linux进程核心概念与编程实战:fork/getpid全解析
linux·运维·服务器·网络·数据结构·哈希算法
代码不行的搬运工2 小时前
显式拥塞通知(ECN)机制
运维·服务器·网络·算力网络