rebase的用法

普通合并代码容易产生merge提交
如:
把主干代码合到个人开发分支(有可能会产生一次merge提交)
当前分支:master_zhang3
执行:git merge master

采用rebase
把主干代码合到个人开发分支,并会把master_zhang3分支的提交拉到最近一个节点
当前分支:master_zhang3
git merge master --rebase

比如master有提交点 1,2,3
此时master_zhang3分支有 1,2,4
结果:1,2,3,4

squash用法
branch1(当前分支) 1,2,3,4,5
branch2 1,2,6,7,8,
在branch2里执行:git merge branch1 --squash
结果1,2,6,7,8,9
这里的9是把3,4,5的提交压缩成一个放到branch2的最后一个提交点

回退提交

hard回退
回退之后提交点的代码改动也会丢失(慎用)
回退一次
git reset --hard HEAD^
回退两次
git reset --hard HEAD^^

soft回退
注:回退之后提交节点丢失,但是代码改动保留
回退一次
git reset --soft HEAD^
回退两次
git reset --soft HEAD^^

补提交
git commit --amend

比如:当前分支有1,2,3
执行git commit --amend
1,2,3 最近改动都补提交到3上
覆盖远程分支(慎用)
该命令会强行把本地的提交同步到远程
git push origin HEAD:master_zhang3 --force

比如:远程分支A有1,2,3,4 本地分支有1,2,5
结果:远程分支和本地分支都变成1,2,5
注:千万不要在公用分支里这么干!
远程分支的代码会被本地冲掉,除非你明确清楚冲掉的后果

Git命令: rebase 和 squash命令相关推荐

  1. git pull --rebase 做了什么? 以及 Cannot rebase: You have unstaged changes 解决办法

    前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到教程. 最近刚学 git rebase,觉得很牛逼的样子,  结果今天就被打脸了. git pull --r ...

  2. [Git Rebase] Git Rebase 合并提交(命令操作 SourceTree 操作)

    前言 在开发过程中, 我们有的时候会有代码提交失误的情况. 在前一章, 我们介绍了git push - - force命令. 本章我们介绍git rebase命令及 SourceTree内的相关操作. ...

  3. git rebase 变基命令——移花接木

    git rebase 变基命令--移花接木 语法 描述 git rebase <since> [<till>]​ git rebase --onto <newbase&g ...

  4. 【Git】git使用 - 各种常用场景命令解决

    (多看git中的各种帮助-h/--help,可能有你想要的命令) 1.分支的创建和切换 创建 >>>> git branch branchName 切换分支 >>& ...

  5. 【git 常用配置及常用命令】

    git 常用命令配置 git 常用配置及命令 1.1 git 邮箱配置 1.1.1 git alise 别名配置 1.1.2 git vim 编辑器配置 1.1.3 在本地创建远程分支并切换 1.1. ...

  6. Git合并操作之merge、rebase、squash详解

    文章目录 1 git merge和git rebase 1.1 git merge 1.2 git rebase 1.2.1 rebase交互模式 1.2.2 git pull --rebase 2 ...

  7. Git命令集之八——提交命令

    2019独角兽企业重金招聘Python工程师标准>>> Git命令集之八--提交命令 1.git commit --message <msg> 将使用add命令更新后的修 ...

  8. git日常使用的常用命令总结

    git日常使用的常用命令总结 git 是什么? Git是目前世界上最先进的分布式版本控制系统(没有之一). Git(读音为/gɪt/.)是一个开源的分布式版本控制系统,可以有效.高速的处理从很小到非常 ...

  9. Git基础操作及常见命令——详解

    这是我看了一些大牛们讲解之后做了一下总结,其中讲解较为详细的是廖雪峰的Git讲解 目录 Git的简介 Git的安装 创建仓库 编辑文件 修改文件 查看修改记录 撤销修改 删除文件 连接GitHub 分 ...

最新文章

  1. python 字典代码_Python 字典(Dictionary)
  2. Mac 下GitHub 访问慢解决方案
  3. matlab单边衰减正弦信号,指数衰减正弦信号
  4. 人脸特征值能存放在sql server中吗_SQL运行内幕:从执行原理看调优的本质
  5. let 只能在严格模式下吗_LET的完整形式是什么?
  6. RTT的线程同步篇——互斥量
  7. GitHub的SSH免密连接
  8. 树莓派RaspberryPi的RPi.GPIO使用指南
  9. [转载] python3安装superset踩坑解决过程
  10. JSON 解析之 FastJson
  11. 关于未知的USB设备(设备描述符请求失败)的解决方法
  12. python搜索网页关键词_新闻网页Python爬虫(jieba分词+关键词搜索排序)
  13. win10双显示屏,分屏显示内容
  14. cpu和gpu各自的作用
  15. BLE MESH组网(二)友谊功能和设备管理
  16. 程序员的悲哀--动车追尾
  17. ajax post无效,jQuery AJAX Post无效
  18. ET篇:master项目结构梳理
  19. 课后习题3.2 设圆的半径r=1.5,圆柱高h=3,求圆周长、圆面积、圆球表面积、圆球体积、圆柱体积。用cin输入数据,输出计算结果,输出时要求有文字说明,取小数点后两位数字。请编程序。
  20. 【百面机器学习之算法工程师读书笔记】——第十四章:人工智能的热门应用-游戏AI

热门文章

  1. react native 啧啧啧
  2. matlab最基础教程(六):编程习惯
  3. 使用RedisTemplate 设置key有前缀 \xAC\xED\x00\x05t\x00\x04 value有前缀 \xAC\xED\x00\x05t\x00\x08 问题解决
  4. 万恶之源 - Python基础
  5. 缓存更新脏读问题总结
  6. java计算机毕业设计云医疗自助就诊平台录屏源码+数据库+lw文档+系统+部署
  7. C语言:添加和显示,数据保存在文件中,下次打开可以获取之前录入的内容
  8. asp毕业设计—— 基于asp+access的网上服装销售系统设计与实现(毕业论文+程序源码)——网上服装销售系统
  9. 【速览】2021年全球及中国培育钻石行业发展现状及未来发展趋势分析[图]
  10. python发送信息给文件传输助手