精华内容
下载资源
问答
  • Git HEAD detached from XXX (git HEAD 游离) 解决办法

    万次阅读 多人点赞 2017-07-28 20:13:44
    本文 Git 图片主要来自:图解 Git,...Git 中的 HEAD 可以理解为一个指针,我们可以在命令行中输入 cat .git/HEAD 查看当前 HEAD 指向哪儿,一般它指向当前工作目录所在分支的最新提交。 当使用 git checkout 切换

    本文 Git 图片主要来自:图解 Git,非常感谢!

    读完本文你将了解:

    什么是 HEAD

    Git 中的 HEAD 可以理解为一个指针,我们可以在命令行中输入 cat .git/HEAD 查看当前 HEAD 指向哪儿,一般它指向当前工作目录所在分支的最新提交。

    这里写图片描述

    当使用 git checkout < branch_name> 切换分支时,HEAD 会移动到指定分支。

    这里写图片描述

    但是如果使用的是 git checkout < commit id>,即切换到指定的某一次提交,HEAD 就会处于 detached 状态(游离状态)。

    这里写图片描述

    HEAD 游离状态的利与弊

    HEAD 处于游离状态时,我们可以很方便地在历史版本之间互相切换,比如需要回到某次提交,直接 checkout 对应的 commit id 或者 tag 名即可。

    它的弊端就是:在这个基础上的提交会新开一个匿名分支!

    这里写图片描述

    也就是说我们的提交是无法可见保存的,一旦切到别的分支,游离状态以后的提交就不可追溯了。

    这里写图片描述

    解决办法就是新建一个分支保存游离状态后的提交:

    这里写图片描述

    具体解决操作

    1. git branch -v 查看当前领先多少
      • 这里写图片描述
      • 4449a91 指向的是 dev1 的最后一次提交
    2. 新建一个 temp 分支,把当前提交的代码放到整个分支
      • 这里写图片描述
    3. checkout 出要回到的那个分支,这里是 dev1
      • 这里写图片描述
    4. 然后 merge 刚才创建的临时分支,把那些代码拿回来
      • 这里写图片描述
    5. git status 查看下合并结果,有冲突就解决
      • 这里写图片描述
    6. 合并 OK 后就提交到远端
      • 这里写图片描述
    7. 删除刚才创建的临时分支

      • 这里写图片描述
    8. 查看 Log,当前 HEAD 指向本地 dev1 ,和远端 dev1 一致,OK 了!

      • 这里写图片描述

    Thanks

    https://marklodato.github.io/visual-git-guide/index-zh-cn.html#detached
    https://git-scm.com/docs/git-checkout#_detached_head


    欢迎扫描关注我的微信公众号,不定时更新我的成长及思考文章~

    这里写图片描述

    展开全文
  • 终于重新回到了git开始的地方,探究下本地git代码仓库中.git目录。 本篇对标题中的几个概念进行简单说明。...说明HEAD其实就是指向master分支,而master中存放的就是最新的commit(40位的sha-1...

    终于重新回到了git开始的地方,探究下本地git代码仓库中.git目录。

    本篇对标题中的几个概念进行简单说明。

    1 HEAD

    HEAD可以指向分支,也可以指向提交。

    这里先说指向分支的情况。

    下图为HEAD指向本地master分支。

    查看.git目录下的HEAD

    说明HEAD其实就是指向master分支,而master中存放的就是最新的commit(40位的sha-1值)。

    2 ORIG_HEAD

    在上图的.git目录可以看到还有一个ORIG_HEAD文件

    查看内容,其实存放的也是commit。当进行一些有风险的操作的时候,如reset、merge或者rebase,Git会将HEAD原来所指向commit对象的sha-1值存放于ORIG_HEAD文件中。这里不做深入测试分析。

    3 FETCH_HEAD

    在上图的.git目录可以看到还有一个FETCH_HEAD文件

    FETCH_HEAD表示某个branch在服务器上的最新状态。
    每一个执行过fetch操作的项目都会存在一个FETCH_HEAD列表,其中每一行对应于远程服务器的一个分支。
    当前分支指向的FETCH_HEAD, 就是这个文件第一行对应的那个分支。存在两种情况:如果没有显式的指定远程分支, 则远程分支的master将作为默认的FETCH_HEAD;如果指定了远程分支, 就将这个远程分支作为FETCH_HEAD.

    4 detached HEAD

    当执行 git checkout commit的时候,也就是指向提交,会变成detached HEAD的状态。

    此时查看分支的话,大概显示如下:

    此时如果不留心,继续进行修改提交,可能会被git回收,从而丢失代码。最好的做法是新建一个分支,再进行代码相关操作。例如,我进行如下操作:

    我切换到commit d53a,注意git的提示文字,git checkout -b new-branch-name,就能在d53acommit上新建一个分支,例如我新建了temp1分支。

     

    展开全文
  • HEAD, ORIG_HEAD, FETCH_HEAD, MERGE_HEAD标志

    千次阅读 2017-08-31 17:59:21
    HEAD标志

    HEAD: The current ref that you’re looking at. In most cases it’s probably refs/heads/master
    当前目录下最近的一次commit

    FETCH_HEAD: The SHAs of branch/remote heads that were updated during the last git fetch
    从远端或分支fetch过来的标志

    ORIG_HEAD: When doing a merge, this is the SHA of the branch you’re merging into.
    做合并时合并后的分支

    MERGE_HEAD: When doing a merge, this is the SHA of the branch you’re merging from.
    合并时合并前的分支

    CHERRY_PICK_HEAD: When doing a cherry-pick, this is the SHA of the commit which you are cherry-picking.

    展开全文
  • linux命令head

    千次阅读 2020-10-15 21:52:35
    linux命令head用于从头部查看文件 head 文件名 显示文件头几行(默认显示10行) head -n 20 文件名 显示文件前20行 head -n -20 文件名 显示文件最后20行

    linux命令head用于从头部查看文件

    head 文件名 显示文件头几行(默认显示10行)

    head -n 20 文件名 显示文件前20行

    head -n -20 文件名 显示文件最后20行

    展开全文
  • git 理解 HEAD^与HEAD~

    万次阅读 2017-12-20 22:32:34
    HEAD^主要是控制merge之后回退的方向 HEAD~才是回退的步数1.建立如图所示分支 2.将HEAD指针向后移动一位到原分支git checkout HEAD^ 3.将HEAD指针向后移动一位到merge分支git checkout HEAD^2 4.将HEAD...
  • Swagger2 添加HTTP head参数

    万次阅读 多人点赞 2017-05-09 15:19:51
    大家使用swagger往往会和JWT一起使用,而一般使用jwt会将token放在head里,这样我们在使用swagger测试的时候并不方便,因为跨域问题它默认不能自定义head参数。然后自己去网上找,发现国内大多数的都是写一个Filter...
  • 仅仅为struct list_head相关的两个宏: #define LIST_HEAD_INIT(name) { &amp;(name), &amp;(name) } #define LIST_HEAD(name) \ struct list_head name = LIST_HEAD_INIT(name) static inline void INIT...
  • HEAD detached at head的处理

    万次阅读 2017-05-06 22:25:37
    其实我们知道,git checkout本质上是修改HEAD里面的内容来让它指向不同分支的,而HEAD文件指向的分支就是我们当前的分支,但是有时候HEAD不会指向任何分支,严谨的说是HEAD指向了一个没有分支名字的修订版本,此时恭喜你,...
  • Git HEAD & head

    千次阅读 2013-11-14 06:12:32
    A head is simply a reference to a commit object. Each head has a name (branch name or tag name, etc). By default, there is a head in every repository called master. A repository can contain any number
  • 分离 HEAD

    千次阅读 2018-01-14 18:14:12
    分离 HEAD HEAD 是一个对当前检出记录的符号引用 —— 也就是指向你正在其基础上进行工作的提交记录。 HEAD 总是指向当前分支上最近一次提交记录。大多数修改提交树的 Git 命令都是从改变 HEAD 的指向开始的。 ...
  • detached HEAD

    千次阅读 2018-09-26 10:48:56
    如果让HEAD文件指向一个commit id,那就变成了detached HEAD。git checkout 可以达到这个效果,用下面的命令:   git checkout 1aea8d9^ laea8d9是最近的一次commit id,^指的是之前一次,因此上面的操作结果...
  • Pandas中head( )函数

    万次阅读 多人点赞 2019-04-04 19:23:40
    在用Pandas读取数据之后,我们往往想要观察一下数据读取是否准确,这就要用到Pandas里面的head( )函数,但是一直有疑问,为什么用head( )函数只能读取前五行数据。接下来给大家分析一下head( )函数原型: 1、应用...
  • linux head

    千次阅读 2017-05-15 20:08:40
    head命令用于显示文件的开头的内容。在默认情况下,head命令显示文件的头10行内容。-n<数字>:指定显示头部内容的行数; -v:总是显示文件名的头信息; -q:不显示文件名的头信息。
  • git reset --hard HEAD

    万次阅读 2019-04-09 20:23:37
    git reset --hard HEAD 表示回退到当前版本,HEAD指向当前版本。如果你修改了一些代码,想去除,就可以用git reset --hard HEAD一次性去除。 git reset --hard HEAD^ 表示回退到上一个版本 lj@lj-virtual-...
  • 头指针head

    2019-06-05 11:54:09
    在使用头指针head时,通常先定义head=NULL,目的是在初始化时使head有一个明确定义,head不为野指针。 例: int * head=NUll,* L; L=(LNode * )malloc(sizeof(Lnode)); head=L; 二、head->next=null 把Head...
  • Git的Head

    2019-02-13 15:41:34
    用git对项目进行版本管理的时候 用HEAD表示当前的版本 HEAD^ 表示上一个版本 同 HEAD~1 HEAD^^ 表示上上个版本 HEAD~2 HEAD~100 表示上100个版本  
  • git reset --hard HEAD^ 回退到前3次提交之前,以此类推,回退到n次提交之前 git reset --hard HEAD~3 退到/进到 指定commit的sha码 git reset --hard dde8c25694f34acf8971f0782b1a676f39bf0a46 强推到...
  • Git命令中HEAD^和HEAD~区别

    千次阅读 2018-09-10 18:23:01
    说明 本篇文章是对Pro Git 7.1 Git 工具 - 选择修订版本 章节中 祖先引用 的总结。 git命令中HEAD^和HEAD~区别。 HEAD^+数字表示当前提交的父提交。...HEAD~(等同于HEAD^,注意没有加数字)表...
  • 查看git HEAD

    千次阅读 2019-10-07 17:54:58
    如果想看 HEAD 指向,可以通过cat .git/HEAD查看, 如果 HEAD 指向的是一个引用,还可以用git symbolic-ref HEAD查看它的指向。 转载于:https://www.cnblogs.com/huanghuanghui/p/11397903.html...
  • linux head 命令

    万次阅读 2018-05-13 12:42:54
    head 与 tail 就像它的名字一样的浅显易懂,它是用来显示开头或结尾某个数量的文字区块,head 用来显示档案的开头至标准输出中,而 tail 想当然尔就是看档案的结尾。 1.命令格式:head [参数]... [文件].....
  • git reset HEAD 是将咱暂存区和HEAD的提交保持一致 git reset --hard HEAD 是将工作区、暂存取和HEAD保持一致 测试 git reset HEAD 创建一个readme.md 的文件 创建一个commit 执行以下命令 git add ...
  • head插件安装

    千次阅读 2019-04-13 14:48:35
    上一节我们已经安装好了Elasticsearch,接下来我们来安装head插件,由于elasticsearch-head插件是由nodejs语言编写,所以安装elasticsearch-head前需要先安装nodejs和grunt。 首先,执行以下命令安装nodejs和grunt ...
  • ElasticSearch安装Head插件

    万次阅读 2019-03-11 18:31:54
    ElasticSearch安装Head插件 Head是elasticsearch的集群管理工具,可以用于数据的浏览和查询,安装过程相对来说比较繁琐,建议安装Kibana (1)elasticsearch-head是一款开源软件,被托管在github上面,所以如果我们...
  • 我们在使用 Git 回退到版本的时候,可能见过这种写法 `git reset --hard HEAD~`,有时候也会遇到这种写法 `git reset --hard HEAD^`,这两个语句都是将代码库还原到上一个版本,但是只差了一个符号,他们究竟有什么...
  • 14-head命令

    千次阅读 2019-04-11 12:21:05
    head 命令所在路径: /usr/bin/head 执行权限: 所有用户 语法: head [文件名] 功能描述: 显示文件前面几行 -n 指定行数 范例: $head -n 20 /etc/services
  • Elasticsearch安装Head

    万次阅读 2019-04-24 14:59:07
    Elasticsearch安装Head 1、下载nodejs 2、安装nodejs 3、测试node 4、安装grunt 5、启动Head 对人工智能感兴趣的同学,可以点击以下链接: 现在人工智能非常火爆,很多朋友都想学,但是一般的教程都是为博硕生...
  • s->next=head; head=s;如何理解

    千次阅读 热门讨论 2017-10-16 17:36:11
    s->next=head; head=s;这两句中你认为head是头结点还是头指针? 书上说的是头指针,然后这两句怎么解释? 5 LinkNode *CreateLinkList()//头插入法无头结点建立线性表 { LinkNode *head,*p,*s; int x; int z=1,n...
  • head 显示文件的前几行

    千次阅读 2019-04-29 14:40:51
    在linux中,可以使用head命令查看文件的前若干行。 使用方式:head filename.txt 默认显示前10行。 如果想指定显示几行,则可以 head filename.txt -n 100,即可显示前100行。 ...
  • head命令用法举例

    千次阅读 2018-07-27 08:53:27
    head与tail就像它的名字一样的浅显易懂,head用来显示档案的开头至标准输出中,而tail 想当然尔就是看档案的结尾。  1.命令格式:head [参数]... [文件]... 2.命令功能:head 用来显示档案的开头至标准输出中,...
  • git 中 HEAD 概念

    万次阅读 2018-04-03 20:01:31
    本文讲述的 是 git 命令中的 HEAD ,适用于 github ,不适用于 gerrit git-recipes 这个链接是一个比较好的git教程 本文不对git进行介绍,只是收集一些和 HEAD 相关的链接 实例 $ git branch -a dev ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 435,137
精华内容 174,054
关键字:

head