前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >git rebase 入门实践

git rebase 入门实践

作者头像
lukachen
发布2023-10-22 15:56:16
1920
发布2023-10-22 15:56:16
举报
文章被收录于专栏:LukaChen BlogLukaChen Blog

使用场景

变更分支的基节点,使提交历史更线性、优雅。

模拟场景与使用步骤

步骤1 开发A,开发阶段

代码语言:javascript
复制
git checkout -b feature/test1
touch feature_test1
git add .
git commit -m 'commit in feature/test1'
git push --set-upstream origin feature/test1

步骤2 开发B,在 master 分支提交

代码语言:javascript
复制
git checkout master
touch master_add1
git add .
git commit -m 'commit in master_add1'
git push

步骤3 开发A,开发完毕,准备发布

代码语言:javascript
复制
git checkout feature/test1
git rebase master           # 开发分支变基
git push --force-with-lease # 开发分支变基后,强制改变远程分支,若 --force-with-lease 失败,则可能需要更新开发分支 [git pull --rebase]
git checkout master
git merge --squash feature/test1
git commit -m 'git merge --squash feature/test1'
git push

上述步骤3可有更佳实践,在合入 master 时进行压缩可以让 master 分支更 ”清爽“,即: 步骤3 开发A,开发完毕,准备发布

代码语言:javascript
复制
git checkout feature/test1
git rebase master           # 开发分支变基
git push --force-with-lease # 开发分支变基后,强制改变远程分支,若 --force-with-lease 失败,则可能需要更新开发分支 [git pull --rebase]
git checkout master
git merge --squash feature/test1                 
git commit -m 'git merge --squash feature/test1' # 经过 --squash 压缩后,拉出所有变更内容,需要 commit 一次 
git push

特别注意

企业微信20220511-173242.png
企业微信20220511-173242.png

一旦开发分支中 feature/test1,有节点被其它分支依赖(如:被 master 分支 merge,或其它开发分支 feature/test2 merge,则 feature/test1 就不要再用 rebase 了,否则大概率事故)

git rebase 变基动图

v2-6b8427b4baf6cdfb08b852ab1cdb4941_b.gif
v2-6b8427b4baf6cdfb08b852ab1cdb4941_b.gif

参考资料

https://cloud.tencent.com/developer/article/1341129 https://zhuanlan.zhihu.com/p/132573100

文章目录

function Catalogswith(){document.getElementById("catalog-col").classList.toggle("catalog");document.getElementById("catalog").classList.toggle("catalog")}

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2022-05-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 使用场景
  • 模拟场景与使用步骤
  • 特别注意
  • git rebase 变基动图
  • 参考资料
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档