git rebase知识点整理

rebase原理

git rebase branchA branchB:首先会取出branchB,将branchB中的提交放在branchA的顶端,一般branchB为当前分支,可以不指定。

master branch 上有新代码提交,本地branch1还停留在旧的master版本。

目的:使branch1同步master的最新代码,并且本地的改动也不会丢失

$ git checkout branch1
$ git rebase master
First, rewinding head to replay your work on top of it...
Applying: UserA commit 2--branch1
Applying: UserA commit 3--branch1
Applying: Usera commit master
Applying: Usera commit master

    

 

git rebase <branch>的原理是:找到两个分支最近的共同祖先,根据当前分支(上例中branch1)的提交历史生成一系列补丁文件,然后以基地分支最后一个提交为新的提交起始点,应用之前生成的补丁文件,最后形成一个新的合并提交。从而使得变基分支成为基地分支的直接下游。

git rebase -i 将本地的多次提交合并为一个,以简化提交历史 (合并两次commit: git rebase -i HEAD~2 --> git push -f origin myBranc)

git checkout master
git pull
git checkout local
git rebase -i HEAD~2  //合并提交 --- 2表示合并两个
git rebase master---->解决冲突--->git rebase --continue

 

参考:https://blog.csdn.net/FightFightFight/article/details/80850328

 

git shell 命令大全:https://www.cnblogs.com/bugs/p/3384339.html

git 常用命令:http://www.jb51.net/article/55442.htm

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值