【问题标题】:How to remove the label after bisecting二等分后如何去除标签
【发布时间】:2019-06-02 16:46:41
【问题描述】:

我尝试运行 bisect 来定位问题,完​​成后我致电 git bisect reset:

$ git bisect reset
We are not bisecting.

但是good的标签还在,怎么去掉这个标签呢? 它在git log 中显示了类似的内容:

commit c561e7297... (good)

【问题讨论】:

  • 您可能错误地使用了git bisect。请显示您在尝试运行 git bisect reset 之前使用的确切命令。
  • 我运行git bisect start 然后git bisect good 然后几个good and bad 命令,最后运行reset
  • 糟糕,不要介意之前(已删除)的评论,您正确使用了重置。无论如何,留下good 标签是没有问题的——它只是一个标签。
  • @torek 它给人的错误印象是这个提交很好,所以我想摆脱它:)
  • 通常git bisect reset 应该清除refs/bisect/ 这应该摆脱它。您可以运行git for-each-ref --format='%(refname)' refs/bisect | xargs git update-ref -d 将它们全部删除,或者只运行git update-ref -d refs/bisect/good 删除good 一个。

标签: git git-bisect


【解决方案1】:

你说:

我运行 git bisect start 然后 git bisect good

来自documentation,以下是使用git bisect时应遵循的程序:

$ git bisect start
$ git bisect bad        # mark current commit as bad
$ git bisect good v1.0  # mark some earlier commit as good

Git bisect 基本上只是进行二分搜索,以找到第一个错误提交,即分支中出现了一些问题。它希望您将某个提交标记为好,然后将一些较早的提交标记为坏。因为您首先将当前提交标记为良好,而没有指定错误提交,所以我的猜测是 bisect 刚刚完成而没有做任何事情。

【讨论】:

  • 我不认为(good) 实际上是历史的永久部分。在运行 git bisect reset 之后,它应该自行消失 AFAIK。
  • 但是git bisect reset我跑了好几次了,它还在,所以才问这个问题。
  • 尝试运行这 4 个命令:git bisect startgit bisect badgit bisect good HEADgit bisect reset。这是一个无操作的完整二分法,希望可以重置。
  • 如果您的舞台和 WD 是空的,请尝试使用git reset --hard。无论如何,标签并不存在,应该对你的 Git 没有影响。
猜你喜欢
  • 1970-01-01
  • 2017-09-21
  • 2020-02-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-03-24
相关资源
最近更新 更多