git merge conflict(万恶之源) --- rebase 解决
程序员文章站
2024-03-24 09:36:58
...
新添加库到项目中,发起merge request之后,收到这个老大消息,这是啥?(作为一个只用这些命令的小白,咱啥也不敢说,啥也不敢问。去查)
rebase,直译为变基,它会把某个分支上的所有的提交的更改在另一个分支上重现一遍。
变基原理:首先找到两个要整合的分支(当前所在的分支和要整合到的分支)的共同祖先,然后取得当前所在分支的每次提交引入的更改(diff),并把这些更改保存为临时文件,这之后将当前分支重置为要整合的分支,最后在该分支引入之前保存每个临时更改。
git pull
git checkout ml_add_async # 分支
git rebase master
信息如下:
打开 conflict file:
通常应该:
master 上的修改
=======
和最后的
>>>>>>>
保留你自己分支上的修改,但也可能需要保留 master 上的修改,或者两者的混合体
git 给你展示的是 master 上当前状态加上 master 上当前修改和你的分支的修改两者冲突的部分。保留两分支之一的修改,或者完全修改为别的内容。总之把 <<<<<<< ======= >>>>>>> 这三种文本行删掉并保证内容正确(是你想要的)即可。
git rebase --continue
git push origin add_ml_async --force
最后退出rebase状态,push分支到remote即可。commit 操作在rebase中隐含完成。
上一篇: android 自定义view仪表盘
推荐阅读
-
git merge conflict(万恶之源) --- rebase 解决
-
【解决方案 七】---Git Merge时“交换文件.MERGE_MSG.swp已经存在”的问题
-
一不小心git rebase后出现(master|REBASE 1/10)的问题及解决办法
-
(转)git rebase和merge对比
-
(转)git rebase和merge对比
-
详解git merge 与 git rebase的区别
-
解决使用commit提交大文件无法推送到远程库问题及git rebase使用详解
-
git Please move or remove them before you can merge. 错误解决方案
-
git merge与git rebase
-
git解决冲突与merge