`
hongtoushizi
  • 浏览: 378438 次
  • 性别: Icon_minigender_1
  • 来自: 天津
社区版块
存档分类
最新评论

git 误删分支恢复方法

    博客分类:
  • git
git 
阅读更多

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

1.创建分支 abc

git branch abc
  • 1
  • 1



2.查看分支列表

git branch -a
  abc
* develop
  remotes/origin-dev/develop
  • 1
  • 2
  • 3
  • 4
  • 1
  • 2
  • 3
  • 4



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
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13



4.删除分支abc

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



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

git branch -a
* develop
  remotes/origin-dev/develop
  • 1
  • 2
  • 3
  • 1
  • 2
  • 3

 

恢复步骤如下:

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

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

 

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
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

可以见到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
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

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

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

 
分享到:
评论

相关推荐

    git错误回滚工具,对配置文件误删有大作用

    Git 错误回滚工具对配置文件误删的解决方案 Git 是一个功能强大的版本控制系统,可以帮助开发者追踪代码的变化历史,并在出现问题时进行回滚。下面是 Git 的一些基本概念和使用方法: 1. Git 安装:使用 DNF 包...

    git 应用大全

    本文将围绕“Git应用大全”的主题,深入探讨Git的核心命令及其应用场景,特别聚焦于如何处理误删主分支(master分支)的情况,并重新构建该分支。 #### Git基础命令概览 在详细介绍特定场景之前,我们首先回顾一些...

    git实战命令

    7. **恢复误删分支**:通过`git reflog`查找最近的提交,然后使用`git checkout`恢复。 #### 更多分支操作 - **合并分支**:`git merge branch_name`将`branch_name`分支合并到当前分支。 - **切换分支**:`git ...

    obsidian-git 插件

    2. 标签与分支:利用 Git 分支策略,为特定主题或项目创建分支,同时利用 Obsidian 的标签系统,对笔记进行分类管理。 3. 解决冲突:在多人协作时可能会遇到冲突,学会使用 Git 的冲突解决机制是必备技能。 4. ...

    猴子都能懂的GIT入门

    - 恢复误删文件:`git checkout -- &lt;filename&gt;`可以从最近的提交中恢复文件。 通过学习和实践这些基本操作,即使是非技术背景的“猴子”也能掌握Git的精髓,实现高效、协同的软件开发。阅读"猴子都能懂的GIT入门@...

    git教程(廖雪峰)小结汇总(带目录)

    如果文件已经被提交到版本库,即使误删也不用担心,因为Git能够恢复文件到最新版本,但会丢失最近一次提交之后所做的修改。 #### 远程仓库管理 - **添加远程库**:使用`git remote add origin git@server-name:...

    git工具命令笔记

    如果误删,`git checkout -- file 名字` 可以恢复。 8. **远程库**: - 创建远程库后,可以通过 `git remote add 远程库名 地址` 关联远程仓库。 - 首次推送使用 `git push -u 远程库名 master`。 - 克隆远程库...

    Git-2.24.0.2-64-bit.exe 高速下载

    9. **版本回溯与撤销**:Git的`git log`命令可以查看提交历史,`git reset`和`git revert`则可以用来撤销或恢复到特定版本,这对于修复错误或恢复误删内容非常有用。 10. **标签(tag)**:Git标签用于给特定的提交打...

    Git权威指南.txt

    - 如果误删文件,可以通过 `git checkout` 命令恢复到特定版本。 - **10.3 文件的移动** - 移动文件时,需要先删除旧文件再添加新文件,或者使用 `git mv` 命令。 - **10.4 文件忽略** - 使用 `.gitignore` ...

    Git Magic 中文版

    - **恢复丢失的提交**:即使误删了提交,也可以通过`git reflog`找回。 ### 6. Git的局限性与挑战 - **Windows兼容性**:Git在Windows平台上的使用可能会遇到一些特殊问题,如路径长度限制和行尾字符差异。 - **...

    Git-1.9.4-preview20140815

    8. 版本回溯:Git允许用户轻松地回溯到历史版本,查看更改记录,甚至可以切换到任意提交状态,这在解决冲突或恢复误删代码时特别有用。 9. 代码审查:Git支持代码审查功能,如使用`git pull request`,在合并代码前...

    git常用命令操作思维导图

    对于误删的文件,`git checkout &lt;filename&gt;`可以恢复。 分支是Git的强大特性,它们允许你平行开发不同的功能或修复bug。创建新分支用`git branch &lt;branch-name&gt;`,切换分支用`git checkout &lt;branch-name&gt;`,合并...

    Git快速操作

    如果误删了文件,`checkout`命令可以帮助你恢复: ```bash git checkout --file1 ``` 在合并分支时可能会遇到冲突,这时你需要手动解决冲突后,再进行提交: 1. 解决冲突,编辑冲突文件。 2. 添加已解决冲突的...

    Git客户端(TortoiseGit)基本使用详解

    通过本文档的学习,读者应能掌握TortoiseGit的基本配置与使用方法,了解如何进行项目克隆、本地提交、查看日志、推送代码以及分支管理等操作。此外,对于分支的高级使用也有了一定的了解,能够更好地应对复杂的项目...

    Git命令大全1

    - **找回文件**:如果误删,可以使用`git checkout -- &lt;file&gt;` 恢复工作区的文件。 - **重置修改**:`git reset &lt;file&gt;` 用于取消对文件的修改,回到上次提交的状态;`git reset --hard HEAD` 会重置整个工作区到...

    git命令大全

    - 恢复误删文件:`$git checkout --name`。 6. **远程仓库**: - 创建 SSH 密钥:`$ssh-keygen –t rsa –C "youremail@example.com"`。 - 添加远程仓库:`$git remote add origin name`。 - 推送本地仓库至...

    Git 中文教程

    2. **误删重要文件**:可以使用`git checkout HEAD -- &lt;file&gt;`恢复文件。 3. **撤销错误的提交**:使用`git revert &lt;commit&gt;`创建新的提交来撤销之前的错误提交。 #### 七、Git社区贡献者 以上提到的部分内容展示...

Global site tag (gtag.js) - Google Analytics