git游离状态解决方案 HEAD is now at 029bab7f xx

摘要:
git分离状态的原因是,当使用git命令签出版本时,它意外地签出到远程分支,但该分支在本地不存在,因此此时它将处于“detachedHEAD”状态,即本地HEAD无法找到本地分支,它将指向远程分支的上一次提交。问题现象:1.你处于“去头部”状态。你可以四处寻找,进行实验更改,并提示通信

git游离状态产生的原因是:使用git命令checkout版本时,不小心checkout到了远程分支,但此分支本地并没有,因此此时会处于 'detached HEAD' 状态,

即本地HEAD找不到本地分支会指向远程分支的最后一次提交.

问题现象:

一.会提示

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 switching back to a branch.

If you want to create a new branch to retain commits you create,

you may do so (now or later) by using -c with the switch command.

Example: git switch -c Or undo this operation with: git switch- Turn off this advice by setting config variable advice.detachedHead

to false HEAD is now at da589bf6 

二.此时运行git branch -a发现有(HEAD detached at xxx)这种奇怪的本地版本 这样的提示.

此时不要慌,百度了很多,都是这种解决方法 https://www.cnblogs.com/kibana/p/8917501.html 但明显是天下文章一大抄,这种其实没有说全,明显的硬伤是在第二步时根本无法切到主分支,

因为此问题的核心是本地没有远程的主分支.

此时建议:

1.git fetch 获取所有分支,先获取所有最新远程分支

2.git branch -a 所有分支,查看所有分支

3.git checkout -b 4.0 origin/mrh/4.0.0 拉取远程到本地

4.git branch tmp da589bf6 创建一个临时分支合并上面最后一次提交id

5.git checkout 4.0 再切到本地4.0,准备合并临时分支

6.git merge tmp  合并临时分支

此时会提示 Your branch is ahead of 'origin/mrh/4.0.0' by 2 commits. (use "git push" to publish your local commits) 提示比远程分支比2个版本,
说明即将成功了,合并了最新的改动(这时因为我本地同时有最新的改动,瞎操作导致的,一般游离应该不会有) 重新push到origin/mrh/4.0.0 远程分支后再次使用git branch -a查看,

发现没有了 (HEAD detached at xxx) 这种版本,说明成功解决了.
7.此时可以删除tmp分支了,git branch -D tmp 删除分支.

免责声明:文章转载自《git游离状态解决方案 HEAD is now at 029bab7f xx》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇zabbix3.0.4 部署之七 (zabbix3.0.4 邮件报警) & 微信报警【转】TCP/IP和SOCKET的区别下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

超详细简单小白安装GIT教程

首先找到下载网站https://git-scm.com/官网:下载页面 本教程安装的版本选择安装页面,这里默认为C盘组件安装页面:这里把Windows Explorer integration全选上,这里是让鼠标右键出现安装页面Use a TrueType font in all console windows:在windows控制页面中使用TrueTyp...

Git 之 配置文件与用户凭证

配置文件 Git的配置文件有三个: 系统配置: /private/etc/gitconfig 用户配置: ~/.gitconfig 项目配置:.git/config 用户凭证 由于Git和Github交互操作可能会很频繁,那么一定少了用户授权的操作,为了防止每次操作重复输入用户名和密码,Git提供了两种解决方法: 秘钥首先创建一对秘钥 ssh-ke...

git操作

Git常用操作命令 1、git的原理 基本概念 Workspace:工作区 Index / Stage:暂存区 Repository:仓库区(或本地仓库) Remote:远程仓库 add:将工作区同步到暂存区 commit:将暂存区同步到本地仓库 push:将本地仓库同步到远程仓库 pull:将远程仓库同步到工作区 checkout:将本地仓库...

git for windows占大内存,idea卡住

最近使用idea提交代码的时候,经常卡在vcs刷新的地方,跳过的话,修改的文件就无法识别,一直都是用sourcetree处理的。按照网上的方法尝试了n次,都失败了。。 失败的方法 修改idea的git配置 删除idea的vcs日志 重新拉取代码 卸载svn ... 解决方法 安装旧版的git 我前段时间升级了git,使用的是最新版的2.28,换回了旧版...

GitLab实战操作指南

一、Git原理 1、Git是什么? Git是目前世界上最先进的分布式版本控制系统(没有之一)。 2、Git有什么特点? 简单来说就是:高端大气上档次! 3、GIt与SVN区别 SVN管理: 属于集中式版本控制系统,版本库是集中存放在中央服务器,必须联网才能工作,脱离局域网,采取互联网提交大文件会比较慢   Git管理: 属于分布式版本控制系统,根...

下载android的linux内核的方法

1、安装git android的linux内核可以从http://android.git.kernel.org/下载,但下载需要使用git,windows版的git可以从http://code.google.com/p/msysgit/下载,有完全安装版和便携版(portable)两个版本可供选择,不常用git的话选portable版就可以了。 下载por...