git远程代码回滚_git 远程分支回滚
git代码库回滚: 指的是将代码库某分支退回到以前的某个commit id
【本地代码库回滚】:
git reset --hard commit-id :回滚到commit-id,讲commit-id之后提交的commit都去除
git reset --hard HEAD~3:将最近3次的提交回滚
【远程代码库回滚】:
这个是重点要说的内容,过程比本地回滚要复杂
应用场景:自动部署系统发布后发现问题,需要回滚到某一个commit,再重新发布
原理:先将本地分支退回到某个commit,删除远程分支,再重新push本地分支
操作步骤:
1、git checkout the_branch
2、git pull
3、git branch the_branch_backup //备份一下这个分支当前的情况
4、git reset --hard the_commit_id //把the_branch本地回滚到the_commit_id
5、git push origin :the_branch //删除远程 the_branch
6、git push origin the_branch //用回滚后的本地分支重新建立远程分支
7、git push origin :the_branch_backup //如果前面都成功了,删除这个备份分支
如果使用了gerrit做远程代码中心库和code review平台,需要确保操作git的用户具备分支的push权限,并且选择了 Force Push选项(在push权限设置里有这个选项)
另外,gerrit中心库是个bare库,将HEAD默认指向了master,因此master分支是不能进行删除操作的,最好不要选择删除master分支的策略,换用其他分支。如果一定要这样做,可以考虑到gerrit服务器上修改HEAD指针。。。不建议这样搞
方法一:
1、新建backup分支 作为备份,以防万一
git branch backup
2、将本地的backup分支 推送到远程的backup
git push origin backup:backup
3、本地仓库彻底回退到xxxxx版本,xxxxx版本之后的commit信息将丢失
git reset --hard xxxxx
4、删除远程的master分支 (注意master前有个:)
git push origin :master
主要远程仓库的master如果是保护分支将报错,请去掉对分支的保护设置:
remote:GitLab:Youare allowed to deleted protectedbranches fromthisproject.Tohttp://gitlab.mogujie.org/shihao/afanty.git ! [remote rejected] master (pre-receive hook declined) error: failed to push some refs to 'http://gitlab.mogujie.org/xxxx/xxxx.git'
5、重新创建远程master分支(这跟第1次提交本地代码库给远程仓库的命令一样)
git push origin master
方法二:
1、本地代码回滚到上一版本(或者指定版本)
git reset --hard HEAD~1
2、加入-f参数,强制提交,远程端将强制跟新到reset版本
git push -f origin master
注:方法二前建议如方法一一样备份当前git中的数据,个人推荐方法二
git远程代码回滚_git 远程分支回滚相关推荐
- 合并远程仓库到本地_git远程仓库
可以用git remote命令,它会列出每个远程库的简短名字.在克隆完某个项目后,至少可以看到一个名为 origin 的远程库,Git 默认使用这个名字来标识你所克隆的原始仓库 也可以加上-v选项(译 ...
- rmi远程代码执行漏洞_WebSphere 远程代码执行漏洞浅析(CVE20204450)
作者:beijixiong404 文章来源:先知社区 漏洞简介 WebSphere是IBM的软件平台,它包含了编写.运行和监视全天候的工业强度的随需应变 Web 应用程序和跨平台.跨产品解决方案 ...
- java远程代码注入_Java RMI远程反序列化任意类及远程代码执行解析(CVE-2017-3241 )...
原标题:Java RMI远程反序列化任意类及远程代码执行解析(CVE-2017-3241 ) 本打算慢慢写出来的,但前几天发现国外有研究员发了一篇关于这个CVE的文章,他和我找到的地方很相似.然而不知 ...
- 合并远程仓库到本地_git远程仓库创建和合并
上周发了一个张佳波小朋友关于git的文章,马上就更多小朋友的回馈.其中周玉涛同志发来了自己对于git之前问题的一些理解和解决方法,希望能帮助更多人解决问题. 为了保证周玉涛同学提供材料的完整性,以下将 ...
- git 把代码同步到另外的分支
git想把代码从A分支同步到B分支,假如当前代码在A分支 需要使用如下步骤 git log 打印log并且复制c ...
- linux远程代码执行漏洞,Bash远程任意代码执行安全漏洞(最严重漏洞)
US-CERT 意识到 Bash 存在一个安全的漏洞,该漏洞直接影响基于 Unix 的系统(如 Linux.OS X 等).该漏洞将导致远程攻击者在受影响的系统上执行任意代码. US-CERT 建议用 ...
- rmi远程代码执行漏洞_fastjson远程代码执行漏洞复现
漏洞原理fastjson提供了autotype功能,在请求过程中,我们可以在请求包中通过修改@type的值,来反序列化为指定的类型,而fastjson在反序列化过程中会设置和获取类中的属性,如果类中存 ...
- git更新远程代码到本地仓库的命令
方式一 (远程代码下载到本地新建分支:对比区别后在合并) 查看远程分支 git remote -v $ git remote -v origin https://github.com/shangshe ...
- git 更新远程代码到本地仓库
git fetch 的简单用法:更新远程代码到本地仓库 方式一 (远程代码直接下载合并到本地) 1. 查看远程仓库 $ git remote -v eoecn https://github.com/e ...
- fastjson反序列化漏洞_【安全风险通告】fastjson反序列化远程代码执行漏洞安全风险通告...
近日,奇安信CERT监测到fastjson官方发布新版本,修补了一个反序列化远程代码执行漏洞.远程攻击者可利用该漏洞绕过autoType限制,进而可在目标服务器上执行任意命令.鉴于该漏洞影响较大,建议 ...
最新文章
- 人人网 6.0 版申请页面随着滚动条拖动背景图片滚动出现的原理
- select报错 spark_使用spark-sql报错 “Metastore contains multiple versions”
- iOS 选择的照片或者拍照的图片上添加日期水印
- 【文档】软件版本发布说明
- 如何给 Chrome 开发者工具设置 Material Design 风格的主题外观
- 技术分享 | 【构建服务端SDK】之连接中心统一调用SDK
- jmeterhttp代理服务器_Jmeter使用HTTP代理服务器录制
- VS2010 自动化整理代码(1)--- VS正则表达替换 PK Vim
- 单片机原理及应用pdf_单片机原理及应用课程设计
- feign 获取请求真实目的ip地址
- matlab 音频fftshift,matlab使用杂谈5-fftshift函数的使用
- lua如何将用户ip转为地理位置信息
- 简单的c++对象模型
- 配置ip地址常用命令及解释
- bada开发——简单介绍
- ECSHOP模板修改
- 基于STM32和阿里云的智能家居
- react-router如何配置可选参数
- 黑群辉DSM 6.2.3 系统安装
- 《分布式消息中间件实践》 读书笔记