Git入门-rebase

1. rebase的作用

使代码提交记录变的简洁

2. rebase应用

2.1 场景1:

​ 一般情况下,对于开发人员而言,代码提交记录只有最初和最后记录存在作用,中间的记录可以舍去。此时就可以使用rebase将多个提交记录整合为一个提交记录。假设master存在四条记录:

在这里插入图片描述

​ 此时想要将v2到v4这三条记录进行合并,使用git rebase -i HEAD~3,即从最近的记录开始找三条记录进行合并。输入命令后出现下图:

在这里插入图片描述

​ 此时将第二行和第三行的pick改为s(s为下述Commands中命令)。第二行改为s表示将v3合并到v2这个记录,第三行改为s表示将v4合并到v3这个记录(因为两行都改为s所以表示将v3和v4合并到v2记录)

​ 修改完成并保存退出后,会出现下图:

在这里插入图片描述

​ 此时可以删除v2到v4中间的内容,重新写上版本的提示信息并保存退出:

在这里插入图片描述

tips:

  • 假设v2已经提交到远程仓库,最好在本地就不要将v2和之后的记录进行合并

2.2 场景2:

​ 假设当前项目有masterdev分支,并且进行了合并。此时查看提交记录发现记录十分的冗余:

  • git log --graph:可视化查看提交记录

在这里插入图片描述

  • 使用git log --graph --pretty=format:"%h %s":简要的可视化查看记录

在这里插入图片描述

​ 首先切换到dev分支,然后执行git rebase master,之后再切换回master执行git merge dev。此时查看提交记录会发现不会出现分叉(红色部分):

在这里插入图片描述

3.注意事项

假设处于master时修改了1.py文件并进行了addcommit,切换到dev分支也修改了1.py文件并进行了addcommit,再使用git rebase master就会产生冲突:

在这里插入图片描述

此时需要去解决冲突并且使用git rebase continue继续完成rebase,在使用该命令前需要执行git add 1.py

4. 参考

https://www.bilibili.com/video/BV17r4y1K7HB?p=17–>https://www.bilibili.com/video/BV17r4y1K7HB?p=19

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值