保持Git历史提交整洁,解决冲突

比较常见的场景,在代码提交场景,自己的代码和master冲突了,直接拉取master 解决冲突,很方便快捷,但是这样就会将其他开发同学的commit 拉到我们的分支,团队的代码合入时,需要代码同学帮忙code review,CR代码提交的commit就会比较混乱。

比较常用解决冲突的方法

将自己的commit 合并,在通过变基的方法去合并master

合并merge

在进行变基操作之前,通常需要先将当前分支与目标分支进行合并(merge)。这是因为变基操作会改变当前分支的提交记录,从而可能导致与目标分支的提交记录产生冲突。如果在变基操作之前没有先将当前分支与目标分支进行合并,那么在变基操作中就可能会出现冲突,从而导致变基失败。

git merge --squash 

变基rebase

在 Git 中,变基(rebase)是一种将一个分支的提交应用到另一个分支上的操作。变基操作可以将一个分支的提交历史“移动”到另一个分支上,从而使提交历史更加清晰和有序。

具体来说,变基操作会将当前分支的提交“重演”一遍,并将这些提交应用到目标分支上。这个过程中,Git 会自动解决提交冲突,并保留提交历史中的作者和提交时间等信息。

# 执行变基操作
git rebase source_branch

在 Git 中,可以使用 git rebase 命令进行变基操作。如果您在变基过程中遇到了冲突,可以使用 git rebase --continue 命令继续变基操作。

# 执行变基操作
git rebase source_branch

# 解决冲突并添加修改的文件到暂存区
git add modified_file

# 继续变基操作
git rebase --continue

需要注意的是,如果您在变基过程中遇到了问题,可以使用 git rebase --abort 命令取消变基操作,并回到变基之前的状态。

!!! 比较常用Git 视图化工具在source tree 会在变基过程中卡死,这时候尽量使用命令行去处理

变基结束 推送

最后使用git push --force 命令强制推送变基后的分支到远程仓库。

# 推送变基后的分支到远程仓库
git push --force origin target_branch

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

江南:-)

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值