为什么我推荐使用 Rebase 不推荐使用 Merge

本文探讨了在Git中使用rebase与merge进行分支合并的差异。rebase提供了一种线性的历史记录,使项目历史更清晰,适合追求整洁提交历史的团队。然而,merge能保留完整历史,适用于重视历史完整性的场景。选择取决于团队偏好和项目需求。
摘要由CSDN通过智能技术生成

git rebase 命令经常被认为是 Git 巫术,它可以让开发团队在使用时更加轻松。在本文中,我们将 对 rebasemerge进行比较。


当你开始在专用分支中开发新功能时另一个团队成员以新提交更新 master 分支会发生什么。这会出现分叉历史记录,对于使用 Git 作为协作工具的任何人来说都应该很熟悉。

当前进度

现在我已经这个功能已经开发完成,想要合并 featuremaster 分支,此时有两种方法可以合并:mergerebase
在这里插入图片描述

使用 Merge 合并

最简单的是将 master 分支合并到 feature 分支中,merge 会将两个分支的历史联系在一起,分支的合并后会创建一个新的 commit
在这里插入图片描述
merge 使用起来很方便,对于个人开发来说确实友好,但是如果当前项目有多个人开发,每个人都用了 merge ,每次都会留下历史记录,合并后在创建一个 commit,项目的代码历史树就会有多个branch跟这个主的branch交织在一起,类似一个蜘蛛网,之后想要回退或者其他需求就会很麻烦。

使用 Rebase 合并

作为 merge 的替代方法,你可以使用以下命令将 feature 分支 rebasemaster 分支上,这会将整个 feature 分支移动到 master 分支的顶端,从而有效地整合了所有 master 的新提交。
在这里插入图片描述
rebase 可以获得更清晰的项目历史记录,从 feature 分支顶端一直跟随到项目的开始而没有任何的分叉。

总结

如果你更喜欢提交的干净,消除不必要合并的线性历史记录,那么你在继承另一分支的更改时应该使用 rebase 而不是 merge

如果你想保留项目的完整历史记录并避免重写公共提交的风险,你可以仍然使用 merge

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值