在使用git的过程中,因为人为因素造成分支(commit)被删除,可以使用以下步骤进行恢复。

首先用以下步骤创建一个新分支,修改一些文件后删除,以便进行恢复。

1.创建分支 abc

git branch abc

2.查看分支列表

git branch -a
abc
* develop
remotes/origin-dev/develop

3.切换到abc分支,随便修改一下东西后 commit

切换分支
git checkout abc
Switched to branch 'abc' 创建一个文件
echo 'abc' > test.txt commit
git add .
git commit -m 'add test.txt'
[abc 3eac14d] add test.txt
1 file changed, 1 insertion(+)
create mode 100644 test.txt

4.删除分支abc

git branch -D abc
Deleted branch abc (was 3eac14d).
  • 1
  • 2

5.查看分支列表,abc分支已不存在

git branch -a
* develop
remotes/origin-dev/develop

恢复步骤如下:

1.使用git log -g 找回之前提交的commit

commit 3eac14d05bc1264cda54a7c21f04c3892f32406a
Reflog: HEAD@{1} (fdipzone <fdipzone@sina.com>)
Reflog message: commit: add test.txt
Author: fdipzone <fdipzone@sina.com>
Date: Sun Jan 31 22:26:33 2016 +0800 add test.txt

2.使用git branch recover_branch[新分支] commit_id命令用这个commit创建一个分支

git branch recover_branch_abc 3eac14d05bc1264cda54a7c21f04c3892f32406a

git branch -a
* develop
recover_branch_abc
remotes/origin-dev/develop

可以见到recover_branch_abc已创建

3.切换到recover_branch_abc分支,检查文件是否存在

git checkout recover_branch_abc
Switched to branch 'recover_branch_abc' ls -lt
total 8
-rw-r--r-- 1 fdipzone staff 4 1 31 22:38 test.txt

这样就可以恢复被误删的分支了

转自 https://blog.csdn.net/fdipzone/article/details/50616386

git 恢复误删的分支的更多相关文章

  1. git恢复误删文件及省去密码提交

    自己遇到这种情况:自己将某文件在网页的控制面板上直接删除了,再pull下来.或者一个成员误删除了某个文件,然后push到远程库了,其他成员也都pull了,结果就是所有人的本地库当前版本中这个文件都不见 ...

  2. git 恢复误删的文件

    误删的文件如何恢复呢? 执行下面的命令: 1. git reset HEAD a.txt 2. git checkout a.txt 注意:上面两个命令,可以帮我们找回删除的文件,但是对文件内容的修改 ...

  3. git恢复已删的分支

    git恢复已经删除的分支 执行git命令, 找回之前提交的commit git log -g 执行效果 commit 80fd3a3e1abeab52030ee9f6ec32b5c815de20a9 ...

  4. git恢复彻底删除的分支

    由于一时疏忽,错误的删除了未发布正式的开发分支,经查资料已恢复分支,特此记录 查看Git日志 git reflog |grep 'filter_or_gwf' 以下日志为已删除分支 filter_or ...

  5. 关于git被误删除的分支还原问题

    在开发过程中, 有可能会将正在开发的本地分支误删, 本地分支被删除时, 如果已经将本地分支的变更推送到了远端, 还没有问题, 如果被删除的本地分支只提交了没有推送到远端, 就悲剧了, 相当于在你上一次 ...

  6. git学习4:分支管理

    每次提交,Git都把它们串成一条时间线,这条时间线就是一个分支.截止到目前,只有一条时间线,这个分支叫主分支,即master分支,HEAD指向master,master指向提交,所以,HEAD指向的就 ...

  7. ###Git 基础图解、分支图解、全面教程、常用命令###

    一.Git 基础图解 转自:http://www.cnblogs.com/yaozhongxiao/p/3811130.html Git 图解剖析 git中文件内容并没有真正存储在索引(.git/in ...

  8. git拉取远程分支并创建本地分支

    本地分支推送至远程 git checkout local_branch git push origin local_branch:remote_branch 一.查看远程分支 使用如下Git命令查看所 ...

  9. Git恢复之前版本的两种方法reset、revert(图文详解)

    一.问题描述在利用github实现多人合作程序开发的过程中,我们有时会出现错误提交的情况,此时我们希望能撤销提交操作,让程序回到提交前的样子,本文总结了两种解决方法:回退(reset).反做(reve ...

随机推荐

  1. Java基础 【Arrays 类的使用】

    package com.zuoyan.sort; import java.util.Arrays; public class ArraysClassDemo { public static void ...

  2. ETCD应用

    etcd:从应用场景到实现原理的全方位解读 ETCD:A highly-available key value store for shared configuration and service d ...

  3. hadoop的Linux操作

    初学hadoop之linux系统操作的hdfs的常用命令 Hadoop之HDFS文件操作 Hadoop fs命令详解 官网doc sudo su - hdfs:免密,以hdfs账户登陆.可操作hdfs ...

  4. Excel 导出通用类

    public class ExportToExcelHelper { public static void ExportExcel(DataTable dt) { try { //创建一个工作簿 IW ...

  5. 【Python】【IO】

    # [[IO]] # [文件读写] '''读写文件是最常见的IO操作.Python内置了读写文件的函数,用法和C是兼容的.读写文件前,我们先必须了解一下,在磁盘上读写文件的功能都是由操作系统提供的,现 ...

  6. centos7 Python3终端中敲击方向键显示「^[[C^[[D」

    [root@localhost src]# python3 Python ( , ::) [GCC (Red Hat -)] on linux Type "help", " ...

  7. CentOS7 安装Perl

    官网:http://www.cpan.org/src/ wget https:.tar.gz cd perl- ./Configure -des -Dprefix=$HOME/localperl ma ...

  8. django Admin文档生成器

    Django的admindocs应用可以从模型.视图.模板标签等地方获得文档内容. 一.概览 要激活admindocs,请按下面的步骤操作: 在INSTALLED_APPS内添加django.cont ...

  9. [原][osg]Geometry详解

    //geometry成员变量 PrimitiveSetList _primitives; osg::ref_ptr<Array> _vertexArray; //顶点 osg::ref_p ...

  10. repeater绑定dropdownlist,jquery+ajax页面无刷新,修改dropdownlist默认值

    html代码: <td>                        <asp:HiddenField ID="hiddenchuli" Value='< ...