转载自: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指针。。。不建议这样搞

最新文章

  1. SQL Server 2014里的性能提升
  2. Java代码优化(长期更新)
  3. MongooseJS 4.6.4 发布,MongoDB 连接包
  4. Sharepoint 2010 工作流启动时处理出错
  5. 搞笑世界杯(codevs 1060)
  6. array_diff的参数前后循序的区别
  7. APP的UI测试要点
  8. Oracle常用知识小结
  9. ArcEngine9.3报错Create output feature class failed
  10. 过滤器(Filter)和拦截器(Interceptor)
  11. Spring Framework 简介
  12. Elasticsearch通关教程(一): 基础入门
  13. centos 批量杀死进程
  14. Python-待
  15. Xcode9.2打包图片显示异常解决方案
  16. java多线程系列14 设计模式 Master-Worker
  17. scokte tcp/ip
  18. 【转载】 火爆的996.ICU项目正在酝酿开源许可证 禁止996公司使用
  19. 自适应手机网站meta name代码
  20. 【内核】linux2.6版本内核编译配置选项(二)

热门文章

  1. Win2003 控制面板 打不开
  2. Ubuntu 16.04下安装Charles抓包工具
  3. plsql窗口列表保持
  4. SpringBoot系列之——整合JPA、mysql
  5. 基于vue-cli 将webpack3 升级到 webpack4 配置
  6. Docker 清理命令汇总
  7. (五)JavaScript之[类型转换]
  8. 【起航计划 025】2015 起航计划 Android APIDemo的魔鬼步伐 24 App->Notification->Notifying Service Controller service中使用Notification
  9. arm寄存器解析
  10. 如何提升SharePoint 2010的性能