当前位置: 首页 > article >正文

【git进阶】git rebase(变基)

git rebase有很多用武之地,我一一道来

合并分支

当多人协作同一个分支时,在提交我们自己版本之前,我们会先用git pull获取远端最新的版本。但是

git pull = git fetch + git merge

git merge是一个非线性的合并操作,大量的merge会造成日志线的分散和交错。实际上

git pull --rebase = git fetch + git rebase

以后建议使用git merge --rebase,使日志线呈一条线。另外变基操作得确保工作区的干净,也就是得先使用git stash -u隐藏工作区的所有变动,然后变基,最后git stash pop恢复工作区。

说到git stash,这里引入一个案例:如果你现在正在分支dev上,然后主分支(main)出现了bug,需要紧急修复。你在dev上的功能尚未完成,不能现在提交,如何操作?

# 隐藏工作区
(dev) git stash -u
# 切换到main
(dev) git checkout main
# 复制临时分支,避免污染主分支
(main) git checkout -b main_f
http://www.lryc.cn/news/2379749.html

相关文章:

  • WPS中代码段的识别方法及JS宏实现
  • 小米MUJIA智能音频眼镜来袭
  • 【神经网络与深度学习】GAN 生成对抗训练模型在实际训练中很容易判别器收敛,生成器发散
  • 基于SpringBoot的家政预约系统
  • [服务器备份教程] Rclone实战:自动备份数据到阿里云OSS/腾讯云COS等对象存储
  • 使用 Whisper 生成视频字幕:从提取音频到批量处理
  • Axure难点解决分享:垂直菜单展开与收回(4大核心问题与专家级解决方案)
  • Linux:网络层的重要协议或技术
  • 【Hadoop 实战】Yarn 模式上传 HDFS 卡顿时 “No Route to Host“ 错误深度解析与解决方案
  • JAVA请求vllm的api服务报错Unsupported upgrade request、 Invalid HTTP request received.
  • 基于 CSS Grid 的网页,拆解页面整体布局结构
  • 华为云Astro轻应用创建业务对象(BO)的概念梳理
  • 利用systemd启动部署在服务器上的web应用
  • ArkUI Tab组件开发深度解析与应用指南
  • psotgresql18 源码编译安装
  • 虚幻引擎5-Unreal Engine笔记之Pawn与胶囊体的关系
  • python创建flask项目
  • Vue环境下数据导出PDF的全面指南
  • Linux中的DNS的安装与配置
  • linux服务器与时间服务器同步时间
  • 【数据结构篇】排序1(插入排序与选择排序)
  • 《Linux服务与安全管理》| DNS服务器安装和配置
  • 【NLP】34. 数据专题:如何打造高质量训练数据集
  • Notepad++ 学习(三)使用python插件编写脚本:实现跳转指定标签页(自主研发)
  • Stable Diffusion 学习笔记02
  • python:pymysql概念、基本操作和注入问题讲解
  • Scala语言基础与函数式编程详解
  • 类的加载过程详解
  • 机器学习-人与机器生数据的区分模型测试 - 模型融合与检验
  • 机器学习 day03