Git系列:常见指令辨析

news2024/11/25 13:38:16

Git系列:常见指令辨析

    • 指令辨析
      • 工作区、暂存区、版本库傻傻分不清楚?
      • 主干和分支的关系是什么?
      • git fetch/merge/pull辨析
      • 日志查看时,git log与git reflog的区别是?
      • git diff和status的区别是?
    • 相关资料

本文小结常见Git概念辨析和指令对比释疑。

指令辨析


工作区、暂存区、版本库傻傻分不清楚?

  • 工作区:为本地直接可见可操作的文件
  • 暂存区:.git目录下的内容,主要为目录索引index,不直接可见,git add后就是放在这儿
  • 版本库:分为本地和远端,git commit后的结果放在本地版本库,git push后的结果推到远端版本库

主干和分支的关系是什么?

  • 相同处:都属于同一项目中的代码管理
  • 不同处:类似树的概念,主干如下图蓝色部分,分支如图中紫色和绿色部分
    • 主干,常称为master/trunk,常用于主体正式交付版本,主干经常合入分支的各种特性
    • 分支,常称为branch,常用于开发分支,分支是从主干分化而来
    • 进阶了解,请参考链接:菜鸟教程之branch
      在这里插入图片描述

git fetch/merge/pull辨析

  • git fetch本质,拉取远端仓库最新commit内容及其commit id到本地,合不合入另说(用户检查后,再用merge指令合入到本地分支)
  • git merge本质,如果本地操作git merge,就将拉取到的远端结果合入到本地工作;如果远端操作git merge,就将本地提交的结果合入到远端仓库。
  • git pull本质,等于 git fetch + git merge,将远程主机的最新内容拉下来后直接合并。
  • 进阶了解,请参考链接:git命令之git fetch的用法

日志查看时,git log与git reflog的区别是?

  • 指令辨析:log和reflog

  • log

    • 显示含远端仓库的commit日志版本提交,如果回退到以前的commit id版本,则只显示到回退后的版本id
      • 查看commit记录,如指令:git log -ggit log --pretty=oneline
  • reflog

    • 显示的是本地仓库的操作日志,包含删除的commit操作和reset操作,如指令:git refloggit reflog --pretty=oneline
  • 注意,在命令后追加 --pretty=oneline,可以简化输出,只显示commit版本号和提交时的备注信息;-g是以文本表格的形式展现

git diff和status的区别是?

  • diff,显示暂存区和工作区的文件差异,可查看已有文件前后的修改,不能查看新增文件的diff(新增文件diff本身是0和1的区别,直接查看新文件即可,不用比较前后差异),注意在git add 后无法查看
  • status,获取修改的文件列表,可以查看文件修改状态(不会告诉具体修改内容),可分辨是在工作区的修改,还是暂存区的修改

相关资料


  1. Git系列:入门必备指令详解,link
  2. Git系列:常用操作一指禅,link

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

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

相关文章

麒麟系统安全管理工具kysec机制详解

DAC访问控制 Linux下有多种权限控制的机制,常见的有:DAC(Discretionary Access Control)自主式权限控制和MAC(Mandatory Access Control)强制访问控制。 Linux上传统的访问控制标准是自主访问控制Discretionary Access Control(DAC)。在这种形式下,一个软件或守护进程以…

【MyBatis】源码学习 05 - 关于 xml 文件解析的分析

文章目录前言参考目录学习笔记1、章节目录概览2、14.3:SqlSourceBuilder 类与 StaticSqlSource 类3、14.4.2:ResultMapResolver 类3.1、测试代码说明3.2、结果集 userMap 解析流程3.3、结果集 getGirl 解析流程3.4、鉴别器 discriminator 解析流程4、14.…

汽车电子CAN协议上位机软件的设计实现

先不说汽车电子,通常上位机软件如何实现呢?作为控制嵌入式设备的PC端软件,主要功能就是配置和读取嵌入式设备基于特定接口的交互信息,所以首先需要控制一个通讯设备作为中间的通讯媒介。比如sscom5.13.1就可以作为上位机软件工具,它需要一个具有usb转UART通讯的接口设备或…

C#中,Elasticsearch.Net判断空字符串

之前有个业务需求,由于最开始存储到es里的,是默认空字符串,后面程序取数据时,发现需要取空字符串的数据时,不好取出来。 字符串的字段如图: 实际数据如图: 用的是C#语言,使用的是E…

【算法笔记】递归与回溯

递归与回溯 To Iterate is Human, to Recurse, Divine. —L. Peter Deutsch 人理解迭代,神理解递归。 —L. Peter Deutsch 1.什么是递归呢 递归形象描述: 你打开面前这扇门,看到屋里面还有一扇门。 你走过去,发现手中的钥匙还可以…

【Spark分布式内存计算框架——Spark Streaming】11. 应用案例:百度搜索风云榜(下)实时窗口统计

5.5 实时窗口统计 SparkStreaming中提供一些列窗口函数,方便对窗口数据进行分析,文档: http://spark.apache.org/docs/2.4.5/streaming-programming-guide.html#window-operations 在实际项目中,很多时候需求:每隔一…

数智未来,AI赋能——第四届OpenI/O 启智开发者大会昇腾人工智能应用专场圆满举行!

为提升启智社区与鹏城实验室在人工智能开源领域的影响力,促进社区成员与开源生态圈伙伴的合作。2月25日上午,第四届OpenI/O 启智开发者大会昇腾人工智能应用专场分论坛在深圳人才研修院举办,进一步促进与发挥企业间资源共通的优势&#xff0c…

【ROS2知识】关于colcon编译和ament指定

一、说明 这里说说编译和包生成的操作要点,以python包为例。对于初学者来说,colcon和ament需要概念上搞清楚,与此同时,工作空间、包、节点在一个工程中需要熟练掌握。本文以humble版的ROS2,进行python编程的实现。 二、…

【408之计算机组成原理】计算机系统概述

目录前言一、计算机的发展历程1. 计算机发展的四代变化2. 计算机元件的更新换代3. 计算机软件的发展二、计算机系统层次结构1. 计算机系统的组成2. 冯诺依曼体系结构3. 计算机的功能部件1. 输入设备2. 输出设备3. 存储器4. 运算器5. 控制器三、 分析计算机各个部件在执行代码中…

【算法】阿里面试题-编码实现20亿个整数,找出某个数X是否存在其中

1.海量数据去重-BitMap位图解决方案 需求(面试题) 一个32位4G内存的操作系统,在20亿个整数,找出某个数X是否存在其中 假如是java语言,int占4字节,1字节8位(1 byte 8 bit) 方式一&…

Mockito 入门

目录1.什么是 Mock 测试?2.Mockito简介3.在 SpringBoot 单元测试中使用 Mockito3.1 Maven依赖:3.2 UserService.java3.3 User.java3.4 thenReturn系列方法(测试桩)3.5 thenThrow系列方法3.6 verify 系列方法4.Spring中mock任何容器…

计算机组成原理-动态链接库-笔记

Linux 下的 ELF 文件格式 Windows 的可执行文件格式是一种叫作PE(Portable Executable Format)的文件格式 动态链接库 这些机器码必须是“地址无关”的。也就是说,我们编译出来的共享库文件的指令代码,是地址无关码(…

10个可以实现高效工作与在线赚钱的 AI 工具网站

自 2020 年以来,内容开发领域已经感受到人工智能工具的存在。 目前,营销人员和内容创作者正在利用这些工具来加快他们的工作流程。 如果您拥有最流行的 AI 工具之一,例如 CopyAI、Jasper AI 或 Content at Scale,您可能正在考虑…

申论套卷 | 要点杂、乱、碎的材料如何快速分类整理?

试卷来源:2020年全国联考上半年材料1A省C市Y区文化馆(非物质文化遗产保护中心)作为政府设立的公益性公共文化事业单位,始终坚持公益文化发展方向,面向基层、贴近百姓、服务大众,积极组织各种大型活动&#…

Ubuntu中安装matelab2020a

Ubuntu中安装matelab2020a1 matelab下载2 安装步骤3 激活matelab4 创建快捷方式我的Ubuntu版本是20.041 matelab下载 matelab官网https://www.mathworks.com/ 点击右上角的get matelab,进入下载页面 没有账号的同学可以先去注册一个,推荐使用教育邮箱&…

错误: tensorflow.python.framework.errors_impl.OutOfRangeError的解决方案

近日,在使用CascadeRCNN完成目标检测任务时,我在使用这个模型训练自己的数据集时出现了如下错误: tensorflow.python.framework.errors_impl.OutOfRangeError: PaddingFIFOQueue _1_get_batch/batch/padding_fifo_queue is closed and has in…

前端JS内存管理

JS内存管理 内存原理: 任何变成语言在执行的时候都需要操作系统来分配内存,只是有些语言需要手动管理分配的内存有些语言有专门来管理内存的方式 如 JVM 了解以上的概念之后,我们再来了解一下大致的内存周期 分配需要的内存使用内存在不使用…

Linux- 系统随你玩之--好用到炸裂的系统级监控、诊断工具

文章目录1、前言2、lsof介绍2.1、问题来了: 所有用户都可以采用该命令吗?3、 服务器安装lsof3.1、安装3.2、检查安装是否正常。4、lsof 命令4.1、常用功能选项4.2、输出内容4.2.1 、FD和 TYPE列5、 lsof 命令实操常见用法6 、常用组合命令7、 结语1、前言…

OpenHarmony 3.2 Beta Audio——音频渲染

一、简介Audio是多媒体子系统中的一个重要模块,其涉及的内容比较多,有音频的渲染、音频的采集、音频的策略管理等。本文主要针对音频渲染功能进行详细地分析,并通过源码中提供的例子,对音频渲染进行流程的梳理。二、目录foundatio…

无线WiFi安全渗透与攻防(一)之无线安全环境搭建

无线安全环境搭建 1.802.11标准 (1).概念 802.11标准是1997年IEEE最初制定的一个WLAN标准,工作在2.4GHz开放频段,支持1Mbit/s和2Mbit/s的数据传输速率,定义了物理层和MAC层规范,允许无线局域网及无线设备…