学习Git变基

学习Git变基

What

git-rebase - Reapply commits on top of another base tip

git rebase命令允许在一个基础提交上重新应用另一个分支的提交,属于整合不同分支的两种方法之一(merge, rebase)。

git merge命令的区别:git日志中不会保留分支的提交节点

命令git mergegit rebase
优点保留原始合并日志信息删繁就简,避免分支过多
缺点使分支杂乱冗余无法保留合并操作的日志

Why

git merge
如果一味地git merge,将会造成日志中分支过多,(实际上最大的影响是日志不好看!!) 影响实际开发中问题的回溯、追查。
git rebase
如果只在适当的时机使用git merge就能避免这种情况。例如:在新增重大feature或fix重大BUG或有一次重大BREAKING CHANGE时,利用git merge命令使原始合并日志保留下来以便日后检查本次合并时的错误;在多数情况下使用git rebase命令来避免分支过多、合并日志过多,(使提交日志更加简洁)方便日后回溯、追查实际的提交而不用花额外时间和精力在合并提交上

How

  1. 若自己的变更还未提交,则建议先拉取到最新代码并解决冲突(若有的话)再进行提交和推送
  2. 若自己的变更已经提交但因为远程仓库有更新而推送失败,则建议在拉取代码时使用git pull --rebase
  3. 若是新增重大功能或修复重大漏洞或有一次重大不兼容改动,则建议使用git merge不要进行变基
  4. 对于已经推送的提交(已经存在于自己仓库之外),则建议永远不要回滚提交并改用变基重新推送,因为会影响他人!!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值