* (HEAD detached at origin/xxx)原因及解决方法
情况:用git checkout 分支名称
来切换分支每次分支名都很长,于是想在Git GUI中切换分支,在Git GUI中点击“checkout”切换分支时提示不在某个本地分支上,如下图所示:
执行git branch
出现* (HEAD detached at origin/xxx)
git branch
* (HEAD detached at origin/xxx)
master
原因
本地分支不存在,没有指定本地分支,所以是detached。
解决方法
方法一:执行以下命令,创建并切换到新的分支,创建的新本地分支会自动去追踪到当前的远程分支。
# 新分支创建的同时切换分支
git checkout -b 分支名
此时执行git branch
也是正常的。
git branch
* xxx
master
方法二:在Git GUI中点击新建分支,点击匹配“跟踪分支名字”,会自动新建并且切换分支,并且关联如下图所示:
后来发现也可以直接在pycharm中选中分支右键点击“checkout”切换分支。