美文网首页
git rebase 变基的理解

git rebase 变基的理解

作者: 不会看源码 | 来源:发表于2019-05-05 03:46 被阅读0次
git rebase 变基的理解

1. rebase翻译:变基

理解:
在git的主要功能就是把某个分支的‘提交commit’提取出来作为‘补丁’,然后把这个补丁提交到你的基底分支(通常是master)。
这样你会发现你的分支提交已经在master分支的前面了。

如果这段不好理解,请看:
http://gitbook.liuhui998.com/4_2.html
https://git-scm.com/book/zh/v2/Git-%E5%88%86%E6%94%AF-%E5%8F%98%E5%9F%BA


思考:
我们如何具体实操rebase。

情景1:可能远程分支已经有了新的提交,但是你的本地master有了几次提交,本地local分支也有看几次提交。

注意:操作之前先备份代码
注意:操作之前先备份代码
注意:操作之前先备份代码

1. 先提交本地分支

//查看当前分支
git branch 

//切换分支,如果没有local分支,或者已经是在分支,此步骤省略
git checkout xx 

//查看修改情况
(local)git statuts

//加入缓存区
(local)git add -u

//提交
(local)git commit -m 'xxx'

2. 把local的分支基底,提到master分支的前面
(local)git rebase master

//local分支和master分支进行合并(master和local的指针在同一节点)
(local)git chcekout master
(master)git merge local

3.更新远程代码, 如果有冲突则修改冲突
(master)git pull

//如果远程分支和本地master的分支指针不在同一个节点,
//把本地的master分支提到(远程master的前面),rebase

//注意你的local分支指针,如果和master分支指针在不同节点
//还想再次切换会local分支继续开发,
//则在提交完成本次代码后,参考情景2

4. 提交到远程
(master)git push



情景2:本地的local分支还没有修改完成,但是需要更新别人提交的代码
注意:操作之前先备份代码
注意:操作之前先备份代码
注意:操作之前先备份代码

1.在master分支更新代码
2.切换到local分支,然后 git rebase master,如果冲突则修改冲突


git rebase --continue
在rebase的过程中,也许会出现冲突(conflict). 在这种情况,Git会停止rebase并会让你去解决 冲突;在解决完冲突后,用"git-add"命令去更新这些内容的索引(index), 然后,你无需执行 git-commit,只要执行:git rebase --continue
这样git会继续应用(apply)余下的补丁。

在任何时候,你可以用--abort参数来终止rebase的行动,并且"mywork" 分支会回到rebase开始前的状态。
 git rebase --abort

具体请参考官方文档:
http://gitbook.liuhui998.com/4_2.html
https://git-scm.com/book/zh/v2/Git-%E5%88%86%E6%94%AF-%E5%8F%98%E5%9F%BA

相关文章

  • 到底什么是 rebase(变基)?

    Keywords: rebase, Git, 变基, 衍合 rebase 的概念/作用其实很简单——就是「变基」。...

  • git rebase 变基的理解

  • 工作中用到的git操作

    git rebase git rebase 原理 找到这两个分支(即当前分支 experiment、变基操作的目标...

  • Git~rebase

    git rebase rebase简介 rebase, 意思为变基,即改变分支的的根支。提到rebase就不得不说...

  • git使用

    git commit git branch ---新建分支 git rebase 分支 ---变基到某个分支 gi...

  • 【快速理解Git分支:交互式变基】【5】

    【交互式变基】 在变基过程中,我们只要调用($ git rebase master),剩下的事情都交给Git来自动...

  • [Git] rebase - 变基

    git rebase [主分支] [特性分支] 一旦分支中的提交对象发布到公共仓库,就千万不要对该分支进行变基操作...

  • git rebase (变基)

    同一个分支, 多人开发, 提交记录不交叉; 不同分支之间, 不用rebase, 用merge, 如果有冲突, 会恶...

  • Git变基 - rebase

    基本流程 将分支切换到dev分支; 执行git rebase master; 之后dev就变为master的直接后...

  • git简单命令手册

    常用的git命令整理 基本操作 与远程仓库的交互 rebase(变基) git pull 相当于git fetch...

网友评论

      本文标题:git rebase 变基的理解

      本文链接:https://www.haomeiwen.com/subject/cmmqoqtx.html