【git】rebase的作用(举例说明)

内容准备

# 新建文件夹
mkdir git-demo

# 初始化git目录
cd git-demo
git init

# 在当前分支(main)提交内容
vim master.txt
git add .
git commit -m 'master content commit'

# 从main分支新建分支(feture1)
git checkout -b feture1
# 在当前分支(feture1)提交内容
vim feture1.txt
git add .
git commit -m 'feture1 content commit'

# 切换回(main)分支
git checkout main

# 从main分支新建分支(feture2)
git checkout -b feture2
# 在当前分支(feture2)提交内容
vim feture2.txt
git add .
git commit -m 'feture2 content commit'

# 查看分支图(如下)
git log --graph --oneline --all

分支图

将feture1合并到main

因为feture1基于main分支,所以只是简单的将main指向feture1

git checkout main
git merge feture1

将feture1合并到master

将feture2变基(rebase)

因为feture2也是从master checkout出来的,而变基的意思就是将feture2基于新的分支,而非之前的,因为master已经合入了feture1,所以变基后,feture2的提交接在了feture1的后面,注意,feture2的hash变了,因为生成了新的提交

git checkout feture2
git rebase master

在这里插入图片描述
这也就是一条完美的提交log,而不是各种分叉的log了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值