00:01
好了小伙伴们,那咱们接下来给大家演示一下这个开发过程中经常遇到的一个问题,叫什么呀?叫做这个代码冲突,咱们看一下这个idea里边是如何解决这个代码冲突的啊,那这个时候我先干嘛呀?哎,我现我现在这个master分支跟我这个hot fix分支它俩是同步的。那我这个时候干嘛呀,我先给它切换回我这个hot fix分支,怎么切换啊,点击这个master,点击hot fix是吧?Checkout,我给它切换成这个hot fix分支上,然后呢,我复制一行代码,相当于我这个热球分支,它要改了,改改什么呀,我改个这个叫hot fix是吧?Hot fix啊test,那你改完之后,你切记你要给他,你要给他提交一下啊,然后呢,我点击这个commit,点击这个get,然后呢,有一个commit directory,咱们来,咱们来个什么呀,咱们来一个叫hold fix commit2注意这个已经是我hold fix第二次提交了。
01:00
那然后呢,我点击这个提交按钮啊。提交成功之后我干嘛呀?我再给它切换回我的master分支,我点击我这个master,然后点击这个checkout,诶,那这个时候你会发现咱们这个master分支还没有这个,还没有这个hot fix test,如果这个时候你直接合并它还是正常合并,那现在我要给你们演示一版那个代码冲突,怎么让他们代码冲突呢?注意我在合并之前干嘛呀,我在合并之前对我的master分支也做一次修改,大家看好了,我在我这个master分支上,我CTRLD复这一行,我加一行什么代码呀,我加一行master test master test,然后这个时候干嘛呀,我要提交这个代码,呃,选择这个什么呀,选择这个get,然后有一个commit directory,然后呢,我来个什么呀,我来一个这个叫master,诶就比如说我叫一个什么呀,Master叫master commit可以吧,然后点击这个commit。
02:03
诶,那这个时候,哎,这个时候是吧,我的master也修改了,然后呢,我的ho fix也修改了,大家在这个日志里边能明确看到咱们的master往前走了一步,咱们的费也往前走了一步,说明他俩都修改了。对于两个都修改的分支,如果这个时候你再把那个和fix给它合并过来,它必然是会发生代码冲突的,那这个时候看好了啊。我要站在我master分支之上来合并我的fix,那我干嘛呀,我点击这个要点击我的fix,然后点击什么呀,点击这个叫。叫march into current啊,把这个hot fix合并到当前分支,哎,你这么一点,哎,它弹出了这么一个框,请大家大声告诉我这个单词什么意思啊,对,它是冲突的意思,说明咱们有一个代码,它发生了代码冲突。
03:04
那因此你怎么啊,哎,你需要你需要干嘛呀,你需要点击这个墨指,你需要手动来合并这个代码,那我点击这个墨指,咱们的idea非常智能,它给咱们打出了一个框框,这个框框就是手动合并代码的框框,我给大家演示演示啊看好了,在你的最左侧是master分支代码,在最右侧是这个hold fix分支代码,在中间这一块是正常没有冲突的代码。那在下边儿呢,下边很明显是冲错代码,你要手动来选择你合并哪些代码。在这一块它有两个符号,这个叉就是不要这个代码,那这个向右的箭头呢,就是我要把这个代码拿到这个位置,那左边一样,这个叉就是不要这个代,那这个向左的箭头就是把这个代码拿到这个位置,那这个是我我想干嘛呀,我想先拿这个master test,诶我这么一点,诶,那这个代码它也就过来了。
04:13
那然后我再点这个,我再点这个hot fix test,你这么一点,诶它也过来了,那你这样一来,你只要是手动把这个代码改好之后,它就会给你提示一个框框,说你所有的改变都被提交了,你现在可以提交你这个改变,并且结束这个合并了,说明咱们手动改掉了这个冲突,那这个时候干嘛呀,我直接点击apply。诶,你会发现咱们这个get test它就变黑了,变黑就说明它合并成功啊,并且自动提交了本地库,咱们这个代码也就全都合并过来了,除此之外,大家还要看一眼你这个日志信息啊,看一下这个日志信息,明显能看到咱们的hot fix跟这个master com2他们俩合并成了一个版本,它自动提成什么呀,是这个墨branch hot fix。
05:13
诶,那他这个冲突合并就给大家讲到这儿啊。
我来说两句