【转载】git 使用 tortoisegit 解冲突

转自:https://www.cnblogs.com/jasongrass/p/11199039.html

git 解冲突需要注意的问题

弄清除冲突双向的修改意图,并在解决冲突时,同时处理两边的意图。

举例说明

A.txt 文件,

在 master 分支上,有一行文字(代码)是这样:

这是一段在 master 分支上的文字。

Alice 在 dev 分支上,修改了这段文字(代码),修改后如下:

在 dev 上,将 master 的文字修改为这段文字;
并添加了其它文字;
如果是代码,这些代码相互关联。

Bob 基于 master 分支开发功能,在 f/feature 分支上,也修改了这段代码,如下:

在一个功能分支(f/feature)上修改 master 上的代码;
以及与之相关的其它内容。

现在,Bob 需要把 dev 分支的代码合并到 f/feature 分支上,git 命令:(@f/feature) git merge dev
将得到一个冲突。
如何解决这个冲突?

解冲突

解冲突推荐使用 GUI 工具,因为直观。这里介绍 tortoisegit 解冲突的操作。

(图1)操作入口:

(图2)冲突列表:

(图3)文件的解冲突页面

对于比较简单的冲突,直接应用某一边的修改,或者做一下简单的编辑(图3中,下面的区域是可以编辑的。)

对于复杂冲突,需要了解两边对同一段代码的修改意图,即对方(Remote)为什么要这样改,要达到什么目的?本方(Local)为什么要这么改,要达到什么目的?

修改比较复杂是,在图3的界面中,可能看不清具体的修改内容,可以在 tortoisegit 中查看两边修改前后的对比。

(图4)查看两边具体的修改。

下面是一张稍显复杂的两边修改的对比图。

(图5)两边修改对比

通过图5 ,可以具体查看两边的修改意图,具体在解冲突是,可能没办法一次处理完。
这时需要先在临时处理冲突(如应用某一边的修改),并记录下另一边的修改(如保留这个窗口,或者截图。)
在 git 的冲突处理完之后(这里其实只是形式上处理完了,实际上丢弃了某一边的修改),再修改代码。

更复杂的情况,可能两边对代码的改动都非常大,需要代码重构才能解决问题。当然,这个情况很少,也应该避免发生。

补充

如图1和图5所示,其中的 Remote 指被合并过来的分支,这里是在 f/feature 上合并 dev , 则 Remote 指 dev 上的修改,Local 指 f/feature 上的修改。

重点

兼顾两边的修改意图,不能因为解冲突,丢失了某一边的修改。

点赞
  1. PokerPhantom说道:
    Google Chrome Windows 10
    https://t.me/s/Gizbo_officials
  2. LuckyBandit说道:
    Google Chrome Windows 10
    https://t.me/s/kazino_s_minimalnym_depozitom/24
  3. PokerPhantom说道:
    Google Chrome Windows 10
    В джунглях ставок, где каждый площадка стремится зацепить заверениями легких джекпотов, рейтинг топ 10 онлайн казино является как раз той путеводителем, что проводит сквозь дебри рисков. Для профи плюс начинающих, которые надоел из-за пустых заверений, он помощник, чтобы увидеть настоящую отдачу, как вес ценной ставки на ладони. Без лишней ерунды, просто реальные клубы, там отдача не просто показатель, а конкретная фортуна.Собрано на основе гугловых трендов, словно сеть, которая вылавливает топовые горячие тренды на рунете. Тут отсутствует места про клише приёмов, каждый пункт будто ставка у покере, в котором подвох проявляется мгновенно. Профи знают: в России тон письма с иронией, в котором ирония скрывается под намёк, даёт миновать обмана.В https://www.don8play.ru/ такой рейтинг ждёт будто раскрытая карта, приготовленный на старту. Загляни, коли желаешь увидеть ритм реальной азарта, минуя обмана плюс провалов. Тем что знает вес выигрыша, это как взять карты у ладонях, а не глядеть на дисплей.

发表回复

电子邮件地址不会被公开。必填项已用 * 标注