当前位置: > 其它学习 > Git >

git 恢复误删的分支

时间:2019-11-13 16:34来源:linux.it.net.cn 作者:IT

在使用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

 

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

(责任编辑:IT)
------分隔线----------------------------