【转】git 删除本地分支和远程分支、本地代码回滚和远程代码库回滚
转载自:http://m.blog.csdn.net/blog/lihongli528628/45483463
【git 删除本地分支】
git branch -D br
【git 删除远程分支】
git push origin :br (origin 后面有空格)
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指针。。。不建议这样搞
最新文章
- SQL Server 2014里的性能提升
- Java代码优化(长期更新)
- MongooseJS 4.6.4 发布,MongoDB 连接包
- Sharepoint 2010 工作流启动时处理出错
- 搞笑世界杯(codevs 1060)
- array_diff的参数前后循序的区别
- APP的UI测试要点
- Oracle常用知识小结
- ArcEngine9.3报错Create output feature class failed
- 过滤器(Filter)和拦截器(Interceptor)
- Spring Framework 简介
- Elasticsearch通关教程(一): 基础入门
- centos 批量杀死进程
- Python-待
- Xcode9.2打包图片显示异常解决方案
- java多线程系列14 设计模式 Master-Worker
- scokte tcp/ip
- 【转载】 火爆的996.ICU项目正在酝酿开源许可证 禁止996公司使用
- 自适应手机网站meta name代码
- 【内核】linux2.6版本内核编译配置选项(二)
热门文章
- Win2003 控制面板 打不开
- Ubuntu 16.04下安装Charles抓包工具
- plsql窗口列表保持
- SpringBoot系列之——整合JPA、mysql
- 基于vue-cli 将webpack3 升级到 webpack4 配置
- Docker 清理命令汇总
- (五)JavaScript之[类型转换]
- 【起航计划 025】2015 起航计划 Android APIDemo的魔鬼步伐 24 App->;Notification->;Notifying Service Controller service中使用Notification
- arm寄存器解析
- 如何提升SharePoint 2010的性能