git - git 中的损坏分支,致命 : your current branch appears to be broken

标签 git git-branch fatal-error git-log blue-screen-of-death

这是我的案例:

  • 我在一个分支机构工作。
  • 将新提交推送到远程。
  • 切换回主分支。

但是在输入git checkout master命令后我的电脑突然遇到了blue screen of death并且发生了意外的力量关闭。重新启动计算机后,我检查了当前分支的状态,结果我将每个文件都标记为新文件。

现在,我被困在这一点上,在 git log 命令后我收到错误

$ git log
fatal: your current branch appears to be broken

如何解决这个问题并恢复我的分支?

我正在使用 Windows 7 和最新版本的 git bash

Edit: I don't want to delete this branch.

最佳答案

我在Windows 7上遇到了类似的问题。在我的例子中,当前分支文件(引用./git/HEAD)在\.git\refs\heads下坏了。

我在 .git\logs\refs\heads 上找到了具有相同分支名称的已损坏当前分支的哈希码。

我通过记事本打开该文件 (.git\logs\refs\heads\xxx) 并将第 4 个数字(哈希码)复制到 (.git\refs\heads\xxx)

关于git - git 中的损坏分支,致命 : your current branch appears to be broken,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33012869/

相关文章:

git - rebase 而不是快进

php - 无法重新声明函数php

git - 不使用 git branch -r 显示所有远程分支

git - 克隆后立即更改 git 存储库?

Git Branch 新手 - 如何反转?

php - WordPress fatal error : Uncaught Error: Call to undefined function mysql_connect() in/wp-includes/wp-db. php:1570

git - Visual Studio 是否可以要求将工作项链接到 git 提交?

git - 如何在Windows上获得更快的SSH克隆速度?

git - 如何获取从 GIT 分支创建的所有分支的列表(获取分支的所有子分支)