[Git] 系列三随意修改提交记录以及一些技巧

news/2024/5/17 8:08:03/文章来源:https://blog.csdn.net/panxin801/article/details/126922552

[Git] 系列三随意修改提交记录以及一些技巧

Author: Xin Pan

Date: 2022.09.17


文章目录

  • [Git] 系列三随意修改提交记录以及一些技巧
    • 整理提交记录
    • 未知提交号哈希值时怎么办?
    • 一些技巧
      • 本地栈式提交
        • 方法一
        • 方法二
      • Tag
      • Describe

高级命令总结好了,大概总结好了。90%的常用功能满足了。但是学习要继续!!!

整理提交记录

git cherry-pick <提交号>,这个命令很简洁也很直观,把<提交号/哈希值>直接复制到了当前HEAD之后作为新的提交。

在这里插入图片描述

未知提交号哈希值时怎么办?

git已经想好了,使用交互式rebase即可。

git rebase -i <提交号>即可,网页这里做的不错。只可意会 不可言传哈哈哈(其实我水平不行)。建议读者去网站看看吧。

一些技巧

本地栈式提交

方法一

我正在解决某个特别棘手的 Bug,为了便于调试而在代码中添加了一些调试命令并向控制台打印了一些信息。最后就差把 bugFix 分支里的工作合并回 main 分支了。你可以选择通过 fast-forward 快速合并到 main 分支上,但这样的话 main 分支就会包含我这些调试语句了。你肯定不想这样,应该还有更好的方式……git rebase 或者git cherry-pick都可以。

其实很简单。只要rebase当前分支到之前提交的分支,然后让main fast-forward就可以了。也是通过rebase完成的。

git rebase -i <之前的某个提交>
git rebase HEAD main
# 现在main 和<之前的某个提交> 一样,而且是自己验证过有效的那个提交。

方法二

同样的用git cherry-pick也可以完成

git switch <之前的某个分支>
git cherry-pick <想要保留个分支>
# 同样的效果

Tag

它们可以(在某种程度上 —— 因为标签可以被删除后重新在另外一个位置创建同名的标签)永久地将某个特定的提交命名为里程碑,然后就可以像分支一样引用了。

更难得的是,它们并不会随着新的提交而移动。你也不能切换到某个标签上面进行修改提交,它就像是提交树上的一个锚点,标识了某个特定的位置。

git tag <tagName> <提交记录>
# 如 git tag v1 fe32(SHA-1为fe32这个提交),为SHA-1为fe32这个提交打上v1标记

Describe

有了tag那如何描述这个tag的意义呢?使用Describe就好啦。

由于标签在代码库中起着“锚点”的作用,Git 还为此专门设计了一个命令用来描述离你最近的锚点(也就是标签),它就是 git describe

在这里插入图片描述

之后教程提供了几个有意思的作业,叫做高级教程。还是挺有意思的,正好检验下自己的学习结果。

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

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

搭建游戏要选什么样的服务器?

服务器是游戏平台数据传输的重要载体&#xff0c;事关我们游戏创业发展的稳定性、安全性。那么&#xff0c;游戏平台搭建要选什么服务器&#xff1f;有什么参考指标&#xff1f;本文将带领大家一探究竟&#xff01; 首先是“游戏平台搭建要选择什么服务器”&#xff0c;我们可…

论文阅读_对比学习_SimCSE

英文题目&#xff1a;SimCSE: Simple Contrastive Learning of Sentence Embeddings 中文题目&#xff1a;SimSCE&#xff1a;用简单的对比学习提升句嵌入的质量 论文地址&#xff1a;https://export.arxiv.org/pdf/2104.08821.pdf 领域&#xff1a;自然语言处理&#xff0c;对…

Redis的基本使用

1.Redis简介 &#xff08;1&#xff09;什么是Redis ①Redis是一个基于内存的key-value结构数据库 ②基于内存存储&#xff0c;读写性能高 ③适合存储热点数据(热点商品、资讯、新闻) ④Redis是一个开源的内存中的数据结构存储系统&#xff0c;它可以用作&#xff1a;数据库、…

计组--存储系统

存储系统 思维导图&#xff1a; 存储器概述 存储器的分类 按在计算机中的作用(层次)分类 主存储器&#xff0c;简称主存(内存) 存放计算机运行期间所需的程序和数据&#xff0c;CPU可以直接对其进行访问。 辅助存储器&#xff0c;简称辅存(外存) 辅存的内容需要调入主存后才…

普中A6开发版——XPT2046四引脚切换测量(含详细教程以及原理图等资料)

文章目录一、简介二、原理图以及手册三、接线四、选择数码管芯片原理讲解五、代码一、简介 本文介绍了XPT2046的使用方法以及普中A6开发版的接线等&#xff0c;并从原理图以及手册中摘选了详细的介绍&#xff0c;充分理解其工作原理。XPT2046本来是一个电阻式触摸屏控制器&…

监控系统架构方案

前言 对于企业级服务器管理&#xff0c;站群管理&#xff0c;针对服务器的监控是非常必要的。 通常&#xff0c;在电脑出现卡死&#xff0c;或进程停止或被挂起的情况下&#xff0c;大家都会使用任务管理器查看进程情况。针对电脑流畅性或资源优化&#xff0c;通常会使用资源管…

物联网开发笔记(19)- 使用Micropython开发ESP32开发板之连接WIFI热点

我们的ESP32开发板是拥有WIFI和蓝牙功能的。这里我们先告诉大家如何将ESP32开发板连接到我们家里的无线路由器上&#xff0c;并和连接到家里无线路由器的一台电脑进行通讯。 一、环境 ESP32开发板Thonny IDEWin10网络调试助手工具 后面设备联网的基本信息&#xff1a;开发板IP…

网课答案查题方法详细步骤

网课答案查题方法详细步骤 本平台优点&#xff1a; 多题库查题、独立后台、响应速度快、全网平台可查、功能最全&#xff01; 1.想要给自己的公众号获得查题接口&#xff0c;只需要两步&#xff01; 2.题库&#xff1a; 题库&#xff1a;题库后台&#xff08;点击跳转&#…

Dobbo微服务项目实战(详细介绍+案例源码) - 1.项目介绍及环境配置

系列文章目录 项目介绍及环境配置 文章目录系列文章目录一、项目介绍1. 功能2. 技术选型3. 页面预览⑴. 登录⑵. 交友&#xff08;主页&#xff09;⑶. 探花⑷. 搜附件⑸. 桃花传音⑹. 测灵魂⑺. 圈子⑻. 消息⑼. 小视频⑽. 我的二、开发工具1. YAPI2. Android模拟器3. 调试工…

ElasticSearch 命令总结

目录0&#xff0c;ES 与关系型数据库类比1&#xff0c;查看集群信息2&#xff0c;查看索引信息3&#xff0c;创建索引1&#xff0c;创建索引2&#xff0c;重建索引4&#xff0c;文档相关操作1&#xff0c;查看文档2&#xff0c;写入文档3&#xff0c;更新文档4&#xff0c;删除…

上海亚商投顾:A股持续调整 券商成做空主力

上海亚商投顾前言&#xff1a;无惧大盘大跌&#xff0c;解密龙虎榜资金&#xff0c;跟踪一线游资和机构资金动向&#xff0c;识别短期热点和强势个股。 市场情绪三大指数今日低开低走&#xff0c;午后均跌超2%&#xff0c;证券、房地产、煤炭等板块跌幅居前。券商股全线下挫&am…

centos8升级宝塔导致的openssl系列问题

故事的发生是这样的&#xff0c;从前有座山 这个问题很古怪&#xff0c;起先是我把宝塔面板从7.9.3升级到7.9.4&#xff0c;结果升级后宝塔弹出 libk5crypto.so.3: undefined symbol: EVP_KDF_ctrl, version OPENSSL_1_1_1b 再后来就是重启的话&#xff0c;连ssh都进不去&…

第137篇 荷兰拍卖

介绍荷兰拍卖,并通过简化版Azuki荷兰拍卖代码,讲解如何通过荷兰拍卖发售 ERC721标准的NFT。 1.荷兰拍卖 荷兰拍卖(Dutch Auction)是一种特殊的拍卖形式。 亦称“减价拍卖”,它是指拍卖标的的竞价由高到低依次递减直到第一个竞买人应价(达到或超过底价)时击槌成交的一种…

05-Java面向对象

文章目录初识面向对象面向过程&面向对象回顾方法及加深对象的创建分析创建与初始化对象构造器详解构造器-无参&#xff08;默认&#xff09;构造器-有参创建对象内存分析(简易)面向对象的三大特征封装封装的作用封装演示继承继承示例SuperSuper注意点super VS this方法重写…

Linux 虚拟地址空间

目录 1、一段代码引出一个问题 运行结果&#xff1a; 讨论&#xff1a; 2、Linux下进程虚拟地址空间分布 3、什么是虚拟地址空间&#xff1f; 4、虚拟地址出现之前&#xff1a;进程直接访问物理内存 5、再述虚拟地址空间 虚拟地址空间结构体是如何进行区域划分的呢&…

HTTP1.x协议详解和HTTP2.0笔记

http协议的作用就是指定两个web应用&#xff0c;之间的一种规则&#xff0c;各种特点&#xff0c;管道化&#xff0c;io多路复用&#xff0c;缓存&#xff0c;状态码&#xff0c;都是基于协议之间的字段&#xff0c;和io之间的调度来实现 HTTP的诞生 1989 年 3 月 CERN&#x…

Linux运维笔记[2]-宝塔面板

宝塔面板 宝塔Linux面板是提升运维效率的服务器管理软件,支持一键LAMP/LNMP/集群/监控/网站/FTP/数据库/JAVA等100多项服务器管理功能。 有30个人的专业团队研发及维护,经过200多个版本的迭代,功能全,少出错且足够安全,已获得全球百万用户认可安装。 openEuler安装宝塔面板…

ElasticSearch(九)【SpringBoot整合】

九、SpringBoot整合Elasticsearch 9.1 基本环境配置 创建一个springboot工程springboot-elasticsearch在pom.xml导入依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-elasticsearch</artifac…

Kafka3.1简介及Kafka3.1部署、原理和API开发使用介绍

Kafka3.1简介及Kafka3.1部署、原理和API开发使用介绍第1章-kafka简介 1-1.消息队列简介 什么是消息队列 “消息队列”是在消息的传输过程中保存消息的容器。“消息”是在两台计算机间传送的数据单位。 英文名&#xff1a;Message Queue&#xff0c;经常缩写为MQ 可以简单理…

ElasticSearch之Kibana安装及使用

文章目录1. 安装1.11.2 上传安装包并解压1.3 生成证书1.3 修改配置1.4 修改目录拥有者1.5 启动软件1.6 使用Kibana官方介绍&#xff1a;Kibana 是一个免费且开放的用户界面&#xff0c;能够让您对 Elasticsearch 数据进行可视化&#xff0c;并让您在 Elastic Stack 中进行导航。…