专栏首页lgp20151222Git删除分支/恢复分支

Git删除分支/恢复分支

这是https://www.cnblogs.com/utank/p/7880441.html的方法,虽然很老现在有点不一样,但总体还是能用的。

总结就是两种方法

1.用commit的id恢复

2.用reflog的头指针恢复

•删除一个已被终止的分支

如果需要删除的分支不是当前正在打开的分支,使用branch -d直接删除

git branch -d <branch_name>

• 删除一个正打开的分支

如果我们在试图删除一个分支时自己还没转移到另外的分支上,Git就会给出一个警告,并拒绝该删除操作。

如果坚持要删除该分支的话,就需要在命令中使用-D选项。

git branch -D <branch_name>

• 恢复被删除的分支

Git会自行负责分支的管理,所以当我们删除一个分支时,Git只是删除了指向相关提交的指针,但该提交对象依然会留在版本库中。

因此,如果我们知道删除分支时的散列值,就可以将某个删除的分支恢复过来。在已知提交的散列值的情况下恢复某个分支:

git branch <branch_name> <hash_val>

如果我们不知道想要恢复的分支的散列值,可以用reflog命令将它找出来。如:

reflog命令

显示整个本地仓储的commit,包括所有branch的commit,甚至包括已经撤销的commit。

只要HEAD发生了变化, 就会在reflog里面看得到。

这时恢复分支a_branch分支如下:

git branch <branch_name> HEAD@{4}

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • java使用netty的模型总结

    由于本人的码云太多太乱了,于是决定一个一个的整合到一个springboot项目里面。

    ydymz
  • 树的遍历--树的广度遍历(层次遍历),深度遍历(前序遍历,中序遍历,后序遍历的递归和非递归实现)

    由于本人的码云太多太乱了,于是决定一个一个的整合到一个springboot项目里面。

    ydymz
  • drools 手动创建kmoudle.xml文件

    ydymz
  • 上哪买手机最便宜?这个小程序给你最新价格情报

    知晓君
  • TensorFlow,Raspberry Pi和Pan-Tilt HAT实时对象跟踪

    https://github.com/leigh-johnson/rpi-deep-pantilt

    代码医生工作室
  • weblogic启动失败:Could not obtain the localhost address 解决办法

    linux下weblogic启动如果出现这个错误,多半是hosts文件不对 1、先输入hostname,查看本机计算机名(比如:server123) 2、sud...

    菩提树下的杨过
  • 神奇的 SQL 之 CASE表达式,妙用多多 !

      历史考试选择题:黄花岗起义第一枪谁开的? A宋教仁 B孙中山 C黄兴 D徐锡麟,考生选C。

  • 设计模式的六大原则

    单一职责原则: 定义:不要存在多于一个导致类变更的原因。 通俗地说:一个类只负责一项职责。 问题来源:一个类T负责两个职责:职责1和职责2,当因为职责1因需求变...

    用户1134788
  • 谷歌云服务如何在企业市场大展拳脚

    GCE的性能和特性不断增加,但是真正部署其产品的公司很少,而且基本都是一些初创公司。其他公有云产品如AWS、微软的Windows Azure、IBM等都有...

    静一
  • CIRCOS圈图绘制 - 最简单绘图和解释

    Circos是绘制圈图的神器,在http://circos.ca/images/页面有很多CIRCOS可视化的示例。 ? ? Circos可以在线使用,在线使用...

    生信宝典

扫码关注云+社区

领取腾讯云代金券