当前位置:   article > 正文

git checkout tag报错 * (no branch) 提示 detached HEAD_you are in 'detached head' state. you can look aro

you are in 'detached head' state. you can look around, make experimental cha

git clone Spark源码后想切换到指定的标签版本:2.0.2,但是一直切换不了,报错是:

[root@cm03 spark]# git checkout v2.0.2
Note: checking out 'v2.0.2'.

You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by performing another checkout.

If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -b with the checkout command again. Example:

  git checkout -b new_branch_name

HEAD is now at 584354e... Preparing Spark release v2.0.2-rc3
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

Centos下Git切换tag失败
意思是说:
你现在所在的版本处于游离状态,也就是说你现在的代码版本与git仓库里的断开联系了,什么什么的。

然后就出现了git就处于: * (no branch)的状态的

[root@cm03 spark]# git branch
* (no branch)
  master
  • 1
  • 2
  • 3

Centos下Git切换tag失败
查了很多资料,最后发现是因为:
tag标签相当于是一个快照,是不能更改它的代码的(玛尼,我只是想编译一想这个版本的程序而已),再加上git版本太低了(我是在Centos下操作的,使用的git是Centos自带的git ), 于是就报错了。
好了原因找到就好办了,解决办法有两种:
方法一:分析tag标签创建一个新的分支
既然tag只是代码的一个快照,那就把这个快照复制出来另行操作
git分析指定的tag标签创建分支的命令:

git checkout -b branch_name tag_name
  • 1

branch_name是要创建的分支的名称
tag_name是tag标签的名称

方法二:升级git版本
参考:
http://mp.blog.csdn.net/mdeditor/index/79282643
再次git切换到指定的tag标签

## 切换到指定的tag版本标签
git checkout v2.0.2

## 查看是否切换成功
git branch
  • 1
  • 2
  • 3
  • 4
  • 5

发现新版本的git只是警告而已,还是能切换到想要的tag上的
Centos下Git切换tag成功

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/笔触狂放9/article/detail/333928
推荐阅读
相关标签
  

闽ICP备14008679号