新添加庫到項目中,發起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中隱含完成。