00:00
然后我们大家再看一下这个脑图哈,我们现在进行到哪了呢?在这个客户端操作里边,诶我们已经看过了命令行客户端的操作,Subversive eclipse客户端哈,Eclipse的这个S插件呢,我们介绍了这些操作的,那么下边呢,我们要说一下分支这个事。什么叫分之海?我们通常呢,使用SV哈,是这样的一个版本,一个版本的这个向前这个迭代哈,哎。这是我们现在呢,其实我们已经能够进行这样的开发了,哎,我们这个常规情况呢,这也能够满足我们的这个需要,诶,那么我们现在呢,其实就是所有的开发哈,在版本控制过程中呢,都在这一条线上,那么所谓这个分支哈,就是在其中的某一个点上面呢,我们可以去再开辟一条线。
01:10
哎,比如说从这呢,我们再开辟一条线,然后呢是两条线哈,他们同时向前推进,两条线同时向前推进。那么呃,这个时候它可以是不同的功能啊,两条线上面呢,是各开发各的,那么当然可以在未来的某一个时候把你分出,分出去的这条线可以再把它这个合并回来。诶,这就叫这个分支,那么我们为什么要这么做呢?啊,当然这个你分出来的这个线哈,可以有很多条,可以有很多条,那么为什么要分出来呢?在这儿哈,我们跟跟大家说,如果说我们这个项目的开发呢,它比较复杂啊,它复杂到一定程度了,那么我们同时呢,有可能有多个功能需要去同时向前去推进。
02:13
我们在笔记里边,咱们来介绍一下这些概念哈,呃,首先来说呢,这个为什么叫分支呢?哎,就是我们在版本控制过程中同时推进啊多个不同功能的这个开发,这个当然说是使用多个分支啊,同时推进多个不同功能的这个开发,诶我们管这种工作的方式呢,叫做诶叫做这个分支哈,那么呃,为什么要使用分支,嗯,它的这个作用啊,使用分支以后呢,它有什么用呢?假设呢,我们有不同的这个功能哈,是由不同的小组呢来负责的,比如说我们有一个项目哈,它有,呃,我们现在呢,打算开发一套新的这个界面啊呃,比如说呢,我们管这个,嗯。
03:23
蓝色皮肤界面这样一个功能,哎,它是由这个呃小组一这个在负责,呃,比如说呢,我们想开发一套这个呃用户嗯用户用户管理吧,这样一个功能,用户嗯。账号管理这样一个功能。这个这个呢,是由这个小组二呢,由他来这个在负责。
04:02
还有一个我们想做一个支付功能,哎,咱们这个这是咱们同一个项目哈,我们有这样一些这个新的功能要开发,然后呢,每一个功能哈,考虑到咱们开发人员的技术组成呢,是分给了不同的这个小组去做。不同的这个小组去做,那么很明显哈,我们这样的功能吧,嗯,它往往呢都是工期呢,是不一样长的,相比较来说呢,皮肤的这个功能开发呢,它应该不是特别费事儿啊,它应该这个用的时间比较短,呃,用户账号管理呢,这个会也会好一些啊,应该是比皮肤呢用的时间多一点,但是呢,不至于多太多,支付功能呢,相对来说会这个复杂一点,诶他们各有各的工期,那么我们已经把这些功能呢,分给特定的小组来做了,那呃,那这个时候呢,如果我们在一条线上,在一条线上去开发可能呢,我们需要先把这个皮肤开发出来,再开发这个第二个功能,再开发第三个功能那。
05:05
其中一个小组干活的时候,另外的小组呢,他就在这儿等着,这个很明显效率是非常低的,我们希望呢,这几个功能能够齐头并进的往前去推进,哎,这样的话呢,我们去创建分支,我们在这个点上创建分支的话呢,就是把这个这个版本的内容呢,给它复制一份,诶复制出来作为这个分支,那么我们这两条线往前推进的时候啊,他们俩他们互相的这个代码呢,是互相不会,嗯,就是互不干扰的啊,他们这个代码呢,修改呢是互不干扰的,那么除非你进行了这个合并啊,不然的话呢,它两个就是各是各的。哎,那么这个时候呢,还有一个什么好处哈,一方面嗯。嗯,这个我们可以说这个是叫做应用场景这个举例吧,它的这个作用啊,这个作用我们怎么概括这个作用,呃,有这么咱们从这两个方面来说,一个是多个功能。
06:14
嗯,开发能够齐头并进,哎,这个同时进行另外一个任何一个分支上。这个功能开发如果这个失败的话,哎,这个删除即可,不会对其他分支呢造成影响啊,啊我们有些功能哈,如果说它比较复杂的话,我们开发的时候呢,去做一些尝试,那有可能呢,尝试呢,最后就失败了,哎我们这个方向不对,咱们得换重新去考虑这个问题,那么我们就可以把这个分支删掉,那么我们对其他的这个分支呢,不会造成这个任何的这个影响啊,这个呢也是呃,降低了我们开发过程中的这个风险的系数。
07:06
嗯,那么这个呢,就是我们给大家介绍啊,从理论上,从概念上的来介绍一下这个分支,下边呢,我们就看一下我们在SN里边呢,这个分支哈,怎么样去用。
我来说两句