首页 > 其他分享 >git rebase 使用

git rebase 使用

时间:2022-09-25 15:23:15浏览次数:49  
标签:git develop rebase 合并 提交 使用

1.GIT REBASE 使用说明

git rebase 作用

  • 将提交进行合并
    有些时候,我们在开发的时候,可能在本地做了几次提交,但是这个提交是解决一个问题的,这个时候如果我们向远程推送的时候,那么会导致有几次提交,实际上我们提交一次就可以,这样提交显得比较清晰。
  • 将分支进行合并成一条线

2. 操作步骤

2.1 将多次提交进行合并

2.1.1 使用命令行操作

比如我对一个文件连续修改了3次

image

这个时候,我需要把这几次提交进行合并,做法是打开控制台:

git rebase -i HEAD~4

这个意思是交互处理最近4个提交。

image

输入命令后,这个时候会出现如上图的操作界面。

我们输入 i 进入编辑界面。

image

这个意思是:

  1. 使用第一个提交
  2. 将A,B提交合并到第一个提交
  3. 删除 C的提交

使用ctrl +c 结束编辑,并使用 wq 写入

这是会进入第二个界面。

image

这个时候我们可以修改注释,修改完成后 ctrl +c 结束编辑,输入 wq 命令进行写入。

image

这个时候,我们可以查看提交合并情况。

image
提交合并成了一个。

image

另外C的提交被删除了,这就是使用 rebase 合并提交的过程。

2.1.2 使用IDEA进行操作

之前的操作是用命令行,下面介绍如何使用 IEDA进行操作。
同样我们先准备几个提交。

image

选择一个提交,右键点击菜单。

image

image

image

其中 squash 可以修改名字,fixup 不修改提交名字直接合并,reword 只修改提交名字。

rebase后的效果。

image
将几个提交合并成了一个提交。

2.2 使用git rebase 进行开发

  • 基于master 创建分支

develop

  • 基于 develop 创建 feature1 分支

在 feature1 添加文件 feature.txt

image

  • 切换到 develop

创建文件 dev.txt

image

  • 切换到 featrue1

执行命令 git rebase develop

测试完成后,切换到 develop

image

  • 切换到 develop

执行命令 git rebase feature1

  • 执行效果

image

这样 我们可以看到提交形成一条直线。

标签:git,develop,rebase,合并,提交,使用
From: https://www.cnblogs.com/yg_zhang/p/16727420.html

相关文章

  • 超级鹰的使用
    超级鹰主要作用在我们利用selenium实现自动登录页面时往往会遇到图片类型的验证码,而超级鹰的作用就是识别验证码返回给我们,下面看下具体的实现。1.https://www.chaojiyin......
  • PS新手教程-如何使用ps将图片制成乐高像素拼图
    如何使用ps将图片制成乐高像素拼图?给大家介绍如何使用ps将图片制成乐高像素拼图,一起来看看吧。PS新手教程-如何使用ps将图片制成乐高像素拼图图片制成乐高像素拼图效果如......
  • 使用 NMF 进行投诉分类
    使用NMF进行投诉分类使用非负矩阵分解的主题建模在这里,我们将在这种技术的帮助下使用NMF(非负矩阵分解),这是一种主题建模方法,我们将检测每张票中出现的模式和重复出现的......
  • 使用 Azure 数据资源管理器(Azure Synapse Analytics 的一部分)的 SecOps 分析平台架构
    使用Azure数据资源管理器(AzureSynapseAnalytics的一部分)的SecOps分析平台架构构建您自己的安全分析平台用例鉴于网络安全对所有组织来说都是一个大问题,我们需要......
  • PowerDesigner 的使用
    教程:https://www.bilibili.com/video/BV1iq4y1u7vj/?p=158 笔记:PowerDesigner使用——有两种常用的模型“概念模型”与物理模型,且相互间可转换。都需要设置实体......
  • 我在 Flutter 应用中使用 Bloc 的方式
    我在Flutter应用中使用Bloc的方式Flutter世界中的每个人(几乎)都知道集团状态管理库。但并不是每个人都知道何时(或如何)使用它。我也是。这篇文章只是我对事物的看......
  • GuavaCache中LoadingCache的使用
    背景LoadingCache是GuavaCache构建缓存实体的方法,是一个支持多线程并发读写、高性能、通用的in-heap(堆)本地缓存。支持key不存在时按照给定的CacheLoader的loader方法......
  • 使用 craco 为 React 项目简单而优雅的路径别名配置
    计划选择最近,做反应项目,然后就想到了为项目配置路径别名,毕竟我一直在看../../../等到这个很不爽,就想着配置一个项目@作为一个项目源代码使用的别名,这是之前完成......
  • 使用hbase时报错ERROR: org.apache.hadoop.hbase.PleaseHoldException: Master is ini
    ERROR:org.apache.hadoop.hbase.PleaseHoldException:Masterisinitializingatorg.apache.hadoop.hbase.master.HMaster.checkInitialized(HMaster.java:2829)ator......
  • Github能够访问但是不能clone文件
    最近换了个地方,先是访问不了github,我意思到我这个地方区域网是无法访问的,后面修改DNS,还是不行,最后浏览器配置能够访问了。然后坑爹地方又出来了,项目不能clone,说什么clon......