git入门之HEAD介绍

news2025/7/15 1:21:35

目录

  • 前言
  • 一、HEAD 的含义与作用
  • 二、游离状态的触发场景及特征
    • 1. 触发条件
    • 2. 游离状态的特征
  • 三、游离状态的常见使用情况
    • 1. 临时查看历史代码
    • 2. 保留游离状态的提交
  • 四、注意事项与最佳实践
    • 1. 风险防范
    • 2. 状态检测技巧
  • 总结


前言

本文介绍Git核心概念HEAD的定义,作用和常见使用例子。

一、HEAD 的含义与作用

1.基础定义

HEAD 是 Git 的「游标指针」,始终指向当前所处的提交位置,有以下两种存在形式:

分支指针模式‌(常见状态):HEAD → 分支名 → 具体提交
例如用git log查看提交历史,下图中HEAD →master →commit 5c039
在这里插入图片描述

游离模式‌(detached HEAD):HEAD → 具体提交
在这里插入图片描述

2. 测试命令

cat .git/HEAD                   # 输出 ref: refs/heads/main
git checkout 84cb0              # 进入游离状态
cat .git/HEAD                   # 输出 e7d3e9d1d0a...

在这里插入图片描述

二、游离状态的触发场景及特征

1. 触发条件

  1. 检出历史提交
# git 2.23+ 版本中以下两条命令等价
git checkout 84cb0              #游离状态
git switch --detach 84cb0              #游离状态```
  1. 检出远程分支
git checkout origin/dev	 #以标签形式检出某次提交,然后HEAD处于游离状态
  1. 检出标签
git checkout v1.0.0	    #以标签形式检出某次提交,然后HEAD处于游离状态`

2. 游离状态的特征

  1. 允许进行提交操作,但新提交不会关联到任何分支
  2. 切换回分支时会弹出警告提示:Warning: you are leaving 1 commit behind…
  3. 未关联分支的新提交会被Git视为「悬挂提交」,2周后可能被垃圾回收清除

三、游离状态的常见使用情况

1. 临时查看历史代码

git checkout v1.2.3      # 游离状态下查看标签版本
git checkout master # 返回主分支,自动退出游离状态

2. 保留游离状态的提交

git checkout e7d3e9d    # 进入目标提交
# 进行若干修改并提交
git branch temp-branch   # 创建新分支保存提交。这个新的分支
git checkout master   # 安全切换回主分支

四、注意事项与最佳实践

1. 风险防范

  • 游离状态下提交后必须及时创建分支引用,否则会被当做悬挂提交,git会在一定事件后自动删除此悬挂提交
  • 使用 git reflog 可找回未关联分支的提交

2. 状态检测技巧

git symbolic-ref HEAD   # 检测是否处于游离状态 1. 游离状态的HEAD 返回 fatal: ref HEAD is not a symbolic ref 2. 正常状态返回分支路径

游离状态返回如下:
在这里插入图片描述
正常状态返回如下:
在这里插入图片描述


总结

git入门系列之HEAD核心概念,作用和常见使用例子介绍,以及HEAD的正常状态,游离状态对比。抛砖引玉,日积月累

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2384686.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

车道线检测:自动驾驶的“眼睛”

在自动驾驶技术的庞大体系中,车道线检测扮演着至关重要的角色,它就像是自动驾驶汽车的“眼睛”,帮助车辆感知道路边界,从而实现安全、准确的行驶。今天,我们就来深入探讨一下车道线检测的奥秘,看看它是如何…

力扣面试150题--填充每个节点的下一个右侧节点指针 II

Day 45 题目描述 思路 初次做法:考虑到每一节点都要指向它右边的第一个节点,那么我们需要从根向下,最好每次提前处理根节点指向它右边的节点,那么符合这样的遍历方法,很容易i想到前序遍历,但是前序遍历是…

使用openvino和onnxruntime的SDK部署yolo11检测模型

这里的代码参考ultralytics代码库里面的examples文件夹下面的openvino和onnxruntime使用案例部署yolo11检测模型的代码。这两种部署框架和前面的tensorRT框架都是类似的,只是使用的接口不太一样。 PART A -- onnxruntime的使用 1.下载onnxruntime的推理框架 (1) …

C 语言学习笔记(指针4)

内容提要 指针 函数指针与指针函数二级指针 指针 函数指针与指针函数 函数指针 定义 函数指针本质上是指针,是一个指向函数的指针。函数都有一个入口地址,所谓指向函数的指针,就是指向函数的入口地址。(这里的函数名就代表…

MySQL的相关操作

目录 一. 字符串函数 二. group by分组 2.1 作用 2.2 格式 2.3 举例 三. order by排序 3.1 格式 3.2 举例 四. limit 4.1 作用 4.2 举例 五. having 5.1 作用 5.2 举例 六. 正则表达式 七. 多表查询 7.1 定义 7.2 子查询 7.3 联合查询 纵向合并 7.4 交叉连…

鸿蒙HarmonyOS多设备流转:分布式的智能协同技术介绍

随着物联网和智能设备的普及,多设备间的无缝协作变得越来越重要。鸿蒙(HarmonyOS)作为华为推出的新一代操作系统,其分布式技术为实现多设备流转提供了强大的支持。本文将详细介绍鸿蒙多设备流转的技术原理、实现方式和应用场景。 …

XXE(外部实体注入)

目录 学习xxe前提:了解xml格式 1. XML基础 2. XXE基础知识 2.1. 结构 2.2. 定义与原理 2.3. XML实体类型 2.4. 攻击类型 2.5. 防御措施 3. pikachu靶场xxe练习 学习xxe前提:了解xml格式 1. XML基础 文档结构包括XML声明、DTD文档类型定义&…

jenkins凭据管理

用途: 存储构建需要与其他系统认证所使用的账户或者密码信息. Username with password类型存储Harbor或者其他系统的用户名和密码。GitLab API token类型存储Gitlab的用户API token。Secret text类型可以用来存储OpenShift等系统中的token。Certificate类型可以用户存储证书&am…

驱动开发硬核特训 · Day 31:理解 I2C 子系统的驱动模型与实例剖析

📚 训练目标: 从驱动模型出发,掌握 I2C 子系统的核心结构;分析控制器与从设备的注册流程;结合 AT24 EEPROM 驱动源码与设备树实例,理解 i2c_client 与 i2c_driver 的交互;配套高质量练习题巩固理…

【python】局域网内通过python远程重启另一台windows电脑

👉技__能👈:C/C/C#/Python/Java/PHP/Vue/Node.js/HTML语言 👉专__注👈:专注主流机器人、人工智能等相关领域的开发、测试技术。 局域网内通过python远程重启另一台windows电脑 目录 局域网内通过python远程…

超越感官的实相:声、光、气味的科学与哲学探微

在人类的感官世界中,声、光、气味是日常生活中最直接的现象:我们聆听音乐、观赏光影、呼吸花香。然而,若深入探究它们的本质,科学与哲学竟以截然不同的视角,揭示了一个超越感官的实相世界。本文将从经典物理学、佛教哲…

什么是VR场景?VR与3D漫游到底有什么区别

在数字化时代,虚拟现实(Virtual Reality, 简称VR)场景与3D漫游作为两种前沿技术,改变着人们的生活方式和体验模式。通过计算机模拟真实或假想的场景,让用户仿佛身临其境,并能与虚拟环境进行互动。尽管VR场景…

python学习day2:进制+码制+逻辑运算符

进制 Python 中的进制表示与转换 进制的基本概念 二进制、八进制、十进制、十六进制的定义与特点不同进制在计算机科学中的应用场景 Python 中的进制表示 二进制表示:使用 0b 前缀八进制表示:使用 0o 前缀十六进制表示:使用 0x 前缀示例…

【分布式文件系统】FastDFS

1.简介 讲这个之前,相信很多人特别是学java的,肯定在做苍穹外卖的时候肯定接触过一个东西,叫做阿里云OSS,他们的功能都差不多,但是阿里云的这个是要付费的,而FastDFS是免费开源的,是由淘宝资深…

word为章节标题添加自动编号

问题: 如何为word文档中的多级标题添加自动编号? 方法: 1、首先为文档各级标题设置格式样式,一级标题使用样式中的“标题 1”,二级标题使用“标题 2”,三级使用“标题 3”,也就是直接在开始—…

无人机飞行间隔安全智能评估、安全风险评估

无人机空中安全飞行评估需结合改进碰撞模型、蒙特卡洛仿真、安全间隔反推及动态避障策略,通过多机型分类与实时数据融合,实现从理论建模到实际部署的全流程管控,为城市低空密集飞行提供安全保障。 需求 无人机飞行间隔安全智能评估 无人机…

【VLNs篇】03:VLMnav-端到端导航与视觉语言模型:将空间推理转化为问答

栏目内容论文标题End-to-End Navigation with Vision-Language Models: Transforming Spatial Reasoning into Question-Answering (端到端导航与视觉语言模型:将空间推理转化为问答)核心问题如何利用大型视觉语言模型(VLM)实现端到端的机器人…

PCB设计实践(二十五)贴片电阻与插件电阻的全面解析:差异、演进与应用场景

一、基础结构与技术原理差异 物理结构差异 贴片电阻(SMD Resistor)采用表面贴装技术(SMT),其主体为扁平长方体或圆柱形结构,两端金属化电极直接与PCB焊盘接触。典型封装尺寸包括0402(1.00.5mm&a…

Canvas设计图片编辑器全讲解(一)Canvas基础(万字图文讲解)

一、前序 近两年AI发展太过迅速,各类AI产品层出不穷,AI绘图/AI工作流/AI视频等平台的蓬勃发展,促使图片/视频等复杂内容的创作更加简单,让更多普通人有了图片和视频创作的机会。另一方面用户内容消费也逐渐向图片和视频倾斜。在“…

利用Qt绘图随机生成带多种干扰信息的数字图片

背景 在学习AutoML或ML的过程中,需要一些图片类型的数据做分类预测训练,于是想到尝试最简单的数字识别,且单个数字的识别,也就是y的取值只有10种可能,即0到9。 以下参考代码分别考虑了数字字体的大小、数字颜色的深浅…