一篇帮助理解git rebase的好文章 ( by quqi99 )

作者:张华  发表于:2013-1-16
版权声明:可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息及本版权声明

( http://blog.csdn.net/quqi99 )

见《图示Git执行流程》http://www.zhaoxiaoqing.cn/a/php/php1/2012/1025/654.html

如上图,rebase的步骤:

1)它首先要git checkout topic,即会将HEAD指针移到topic分支上

2)会将topic与master分支的共同祖先一直到topic分支的所有提交生成patch文件,即会为169a6, 2c33a生成patch文件

3)它强制git reset master分支上,这时候工作区内容都是master分支的内容,然后将上步的patch文件挨个patch上

4)一个个打patch完后,再一个个提交,提交时也会在master处重建那个topic分支。所以它始终是在topic分支提交的

根据http://www.zhaoxiaoqing.cn/a/php/php1/2012/1025/654.html中的git commit命令的流程是:git用暂存区域的文件创建一个新的提交,并把此时的节点设为父节点。然后把当前分支(也就是topic)指向新的提交节点(f7e63)。

git rebase的源代码位于:http://www.opensource.apple.com/source/Git/Git-26/src/git/git-rebase.sh

一篇帮助理解git rebase的好文章 ( by quqi99 )相关推荐

  1. git rebase(变基)—— Git 学习笔记 19

    git rebase(变基) 认识 git rebase 假设你现在基于远程分支"origin",创建一个叫"mywork"的分支. $ git checkou ...

  2. git rebase VS git merge? 更优雅的 git 合并方式值得拥有

    写在前面 如果你不能很好的应用 Git,那么这里为你提供一个非常棒的 Git 在线练习工具 Git Online ,你可以更直观的看到你所使用的命令会产生什么效果 另外,你在使用 Git 合并分支时只 ...

  3. git rebase简介(基本篇)

    原文: http://gitbook.liuhui998.com/4_2.html 一.基本 git rebase用于把一个分支的修改合并到当前分支. 假设你现在基于远程分支"origin& ...

  4. 你什么时候使用git rebase而不是git merge?

    什么时候建议使用git rebase与git merge ? 成功改造后我还需要合并吗? #1楼 在合并/ rebase之前: A <- B <- C [master] ^\D <- ...

  5. git rebase和git merge的用法

    http://softlab.sdut.edu.cn/blog/subaochen/2016/01/git-rebase%E5%92%8Cgit-merge%E7%9A%84%E7%94%A8%E6% ...

  6. Git rebase 和 Git merge 的区别,你知道吗?

    编辑搜图 请点击输入图片描述 Git是大多数程序必备的工具之一,Git常用那么几个命令:pull.push.status.merge.rebase.Git rebase 和 Git merge都是合并 ...

  7. git rebase用法

    开发任务分叉到两个不同分支,又各自提交了更新 整合分支最容易的方法是 merge 命令. 它会把两个分支的最新快照(C3 和 C4)以及二者最近的共同祖先(C2)进行三方合并,合并的结果是生成一个新的 ...

  8. Git Rebase教程: 用Git Rebase让时光倒流

    想象一下你正在开发一个激进的新功能.这将是很灿烂的但它需要一段时间.您这几天也许是几个星期一直在做这个. 你的功能分支已经超前master有6个提交了.你是一个优秀的开发人员并做了有意义的语义提交.但 ...

  9. a commit git 参数是什么意思_深入理解Git - 一切皆commit

    在对 git 有了基本理解和知道常规操作之后,如何对 git 的使用有进一步的理解? 一切皆 commit 或许是个不错的理解思路. 本文将从『一切皆 commit 』的角度,通过 git 中常见的名 ...

最新文章

  1. 关于ContinuationFilter的使用
  2. PHP中文乱码的常见解决方法总结
  3. Transformer源代码解释之PyTorch篇
  4. 1289 大鱼吃小鱼
  5. 中国最险六大寺庙,最后一座至今无人登临
  6. 前端进阶系列(六):盒模型
  7. C# 实现 MD5 和 SHA1 加密算法_哈希函数 hush
  8. javascript学习之利用方向键控制div模块的移动
  9. cgi进程设置多少 宝塔_【存档】新手宝塔建站详细步骤
  10. Go 的时间转换和时区校对总记不住?给你一份备忘单
  11. vue 项目中使用 评论功能 带emoji表情包
  12. 2023-2028年中国压铸机行业发展前景与投资趋势分析报告
  13. 【报告分享】2021巨量引擎日化行业年度报告-巨量算数(附下载)
  14. 腾讯云服务器怎么搭建多个ip,(技巧)利用腾讯云架设多ip实现单窗口单ip
  15. 油管大神教波士顿机器狗学撒尿-给自己倒啤酒,网友:太恶趣味了
  16. 路由器重温——ISIS路由-2
  17. 计算机网络原理知识点之ISO模型解析
  18. 各类稀奇好用的网站,你值得拥有!
  19. 如何对电脑里越来越多的文件进行管理,分类最重要
  20. buck电路 dac stm32_嵌入式设计-基于STM32F334的BUCK同步降压数字电源设计-电路城论坛 - 电子工程师学习交流园地...

热门文章

  1. 快速建立个性化网站【凡科建站】
  2. LeetCode第一题两数之和
  3. Application Cache is a Douchebag
  4. 量化交易入门——数学模型应用于投机交易
  5. 碎碎念C++(一)冗杂问题
  6. 微信小程序 删除服务器图片,微信小程序实现图片上传放大预览删除代码
  7. Neural Collaborative Filtering(NCF) 代码实战(Keras)
  8. 新代plc编程代码及解释_新代系统 PLC 与CNC 接口列表说明
  9. 最大熵模型(maximum entropy model)
  10. 02-组件注册-@ComponentScan-自动扫描组件指定扫描规则