【问题标题】:How to tell if your head is detached in git?如何判断你的头是否在 git 中分离?
【发布时间】:2013-06-23 18:11:15
【问题描述】:

你如何判断你的头是否已经在 git 中分离了?我有一种感觉,这可能是我问题的根源。

【问题讨论】:

    标签: git version-control branch


    【解决方案1】:
    git branch
    

    会显示

    * (no branch)
      master
      develop
    

    如果你处于分离状态。

    【讨论】:

    • * master 连接了?
    • 是的,这意味着你在master上。
    【解决方案2】:

    git status 应该告诉你所有相关的事情。

    您可以手动查看 .git/HEAD 文件的内容。如果它有一个散列,你就分离了。如果有像ref: refs/heads/master 这样的引用,你就没有。

    【讨论】:

      【解决方案3】:

      另一种对脚本有用的替代方法是

      git rev-parse --abbrev-ref --symbolic-full-name HEAD
      

      这给了我HEAD 一个分离的头,或者其他情况下的分支名称。

      【讨论】:

      • 感谢您以编程方式提供明确的答案...
      【解决方案4】:

      对于 git 2.22 及以上版本,可以使用命令git branch --show-current。在分离头状态的情况下,输出将没有任何内容。

      如果您想在脚本中使用它,我们可以将其与wc 合并,如下所示:

      git branch --show-current | wc -l
      

      此命令将在分离头的情况下返回0,在有效分支的情况下返回1

      【讨论】:

        猜你喜欢
        • 2016-10-07
        • 1970-01-01
        • 2012-06-28
        • 2013-02-21
        • 1970-01-01
        • 1970-01-01
        • 2018-09-21
        • 2014-05-11
        • 2018-11-26
        相关资源
        最近更新 更多