分支系列 - 7:合并发生冲突怎麽办?

角色情境

小明同时学会输入指令操作着终端机、
以及透过滑鼠操作着图像化介面的 Sourcetree 软件,
又完成一项如何操作分支的概念,信心也逐渐大增。

小明:「完成了。合并成功。」
小华:「目前为止,合并的部份都没有发生冲突呢~可喜可贺!」
小明:「咦...在什麽情况下合并会发生冲突呢?」
小华:「假设分支 A 和分支 B 编辑同一份档案的相同部份,将会遇到合并冲突的问题哩~」
小明:「那麽~发生这样的情况要怎麽解决呢?」
小华:「嗯...建议采取「协调後,保留最主要的内容哩」...」


透过 VSCode + 图像化介面的 Sourcetree 软件解决合并时的冲突

(1) 建立分支 feature/mergeA - 编辑 redesign.css 的 p 标签样式
(2) 建立分支 feature/mergeB - 编辑 redesign.css 的 p 标签样式

https://ithelp.ithome.com.tw/upload/images/20201011/20130245zqvtOxAVuM.png

(3) 由分支 feature/mergeA 合并分支 feature/mergeB,发生冲突

https://ithelp.ithome.com.tw/upload/images/20201011/20130245HNhGdlT2eM.png

(4) 解决合并时的冲突,有四种选择,分别是:
(a)「接受目前变更」:保留分支 feature/mergeA 的编辑
(b)「接受来源变更」:保留分支 feature/mergeB 的编辑
(c)「接受两者变更」:保留分支 feature/mergeA 和 feature/mergeB 的编辑
(d)「比较变更」
最後这个情境由分支 feature/mergeA 采用「接受来源变更」。

https://ithelp.ithome.com.tw/upload/images/20201011/20130245RUJODkAyiM.png

(5) 储存记录,将档案由暂存区转移至储存库永久保存,完成合并

https://ithelp.ithome.com.tw/upload/images/20201011/20130245gB2Jc5EzDV.png

恭喜 d(・∀・)b ~解决合并分支时的冲突。
分支的介绍告一段落。
接下来,又要学习什麽呢?


参考来源

(1) 高见龙 - 合并发生冲突了,怎麽办?
(2) Nulab - 连猴子都能懂的 Git 入门指南:解决冲突
(3) Nulab - 连猴子都能懂的 Git 入门指南:解决合并的冲突


<<:  [Day 27] 那些年欧洲退税的鸟事

>>:  资视就是力量 - Highcharts / Vue 做个记帐本 (上)

#21-用Canvas做科技感的动态球!(+什麽时候该用CSS/SVG/Canvas?)

今天正式进入Canvas的世界了! 老样子先看成品: 今天来做点科技感的画面,橘色是滑鼠的游标,这个...

Amazon Linux 2 上将 Django 与 Nginx 整合 -Day 08

Amazon Linux 2 上将 Django 与 Nginx 整合 -Day 08 先前我们都是...

#21 让 Automation 与 Chat Bot 连动

今天我们要让之前的程序能跟 Chat Bot 连动。 需要 Worker 吗? 直接从程序中 POS...

day5 : rancher管理与简易的安装相关套件

昨天装好了kubernetes後要面临几个问题,k8s是非常好的container管理平台,但是要怎...

Day 7 : 案例分享(2.2) B2B 客制寄仓处理

案例说明及适用场景 概念上是属於暂收款的机制,但与特定商品绑定 寄仓通常都会搭配商品折扣,所以在退换...