【问题标题】:How to get rid of "refs/bisect/bad" branches in Git如何摆脱 Git 中的“refs/bisect/bad”分支
【发布时间】:2011-07-13 09:49:17
【问题描述】:

我的~/.gitconfig 中有以下内容(这里只是为了帮助您了解我在看什么)

[alias]
    lg = log --graph --all --pretty=format:'%Cred%h %Cgreen(%cr)%Creset - %s %C(yellow)%d %C(bold blue)<%an>%Creset' --abbrev-commit --date=relative

当我执行git log 时,它会向我显示包含分支名称和内容的完整提交树。昨天我发起了一个git bisect,今天我看到我的日志输出中有一个refs/bisect/bad 分支。

refs/bisect/bad 分支到底是什么,我该如何摆脱它?

【问题讨论】:

    标签: git git-bisect


    【解决方案1】:

    这是在对分期间标记为错误的提交指针。你可以运行

    git bisect 重置

    或从 .git/refs/bisect 手动删除指针(但我不建议这样做)

    【讨论】:

      【解决方案2】:

      当您使用git bisect 时,它使用refs/bisect/bad 来跟踪最后一次错误提交。 (当您执行 git bisect bad 时,该 ref 会更新。)

      我怀疑这里发生的事情是你到了二等分的末尾,它报告了第一个错误提交,但你从来没有用git bisect reset 结束二等分,这将清理它创建的引用。您仍然可以运行该命令,它会带您回到开始二分之前的位置 - 但是,在执行此操作之前,我会确保您的工作已提交并且 git status 是干净的,以避免任何可能的混淆.

      如果您在 bash 提示符中使用 __git_ps1,它会通过输出 (9dad0bb...)|BISECTING 来提醒您仍然处于二等分状态。我在another answer 中讨论了一点__git_ps1,这可能会有所帮助。

      【讨论】:

      • 在相对较新的 Git 版本中,您还可以使用 git bisect reset HEAD 来避免切换提交。
      猜你喜欢
      • 2019-04-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-04-03
      • 1970-01-01
      • 1970-01-01
      • 2011-08-04
      相关资源
      最近更新 更多