00:00
好,下面呢,我们。再来研究一个问题,一个什么问题呢?我先给大家描述一下。大家看啊,现在CC里边有这样的一些文件,比如说啊,我们随便找一个文件,嗯,就说MY。就说这个配置文件啊。它里边现在。Yeah。它里边现在啊。没有内容是吧。再看AA。AA里边也有MY,咱们这样更新一下。第六个版本是吧,现在两边内容肯定都一样啊,它里边呢。也没内容。咱们这样。现在给里边。
01:01
放上一些内容。我现在给它里边放上一些内容啊,放上什么呢。就这。就发生这样的九行内容。诶,大家看我这个文件现在修改了啊。现在这个文件修改了,修改以后你看图片又变了,变成这个了叹号。你修改了这个修改内容是不是还没有提交到服务端呢,所以我做一下提交。啊,我这写不写都行啊,我这写上了OK。第七个版本。好了。
02:01
那这样的话,它里边我也更新一下。第七个版本你看。内容也有了吧,好,现在我要描述一下啊,描述一个场景,什么场景呢。现在CC对这个文件进行了。修改。然后呢?AA。就现在目前这个版本,现在它里边是不是有九行数据,AA里边是不是也有九行数据,然后他对这个文件进行了修改,A对这个文件也进行了修改。然后呢?AA先做了提交。AA先做了提交。那CC再做提交,大家想想。这俩内容是不是不一样啊?
03:01
是不是会出问题?你想想是不是?会不会出问题啊,相同的内容,那A改的和BB和这个CC改的肯定内容改的都不一样。都要做提交。那存放到服务端到底以谁的为准呢?叫哥们说了。那后提交了,把先提交了给覆盖,那你要用这种方式肯定不合适。那你说我后提交把前前面提交都覆盖掉了,那那那那别人写的东西都都没了,那肯定不行。这就出了问题了,这个问题叫什么?这个就是我们使用SN。比较麻烦的一个问题,也是比较重要的一个问题。叫什么叫冲突?冲突,由于这个问题比较比较重要啊,所以我。
04:00
把它单列出来一个。咱们进行了说啊这冲突,那冲突是什么,简单描述一下啊。当一个文件。在两个,我当然是多个是吧,我现在在咱们多个,就以两个为例啊,在两个客户端都被修改后,那么第一个客户端。进行提交。是没有问题的。会将其修改过的内容提交到五的对吧。但。第二个客户端在进行提交时会。
05:06
出问题。会出问题。不能完成提交。这就是。冲突问题,咱们这样吧,叫冲突问题吧。这就是冲突。那这种冲突啊,咱们现在对这个冲突问题要想解决清楚,要想让大家真正的理解能够解决的这个冲突,那么我们需要深入研究这个冲突。首先我们要。先研究一下冲突的分类。冲突的分类。我们根据引起冲突的具体原因的不同,可以将冲突分成两类。
06:07
根据冲突。引发的。这个具体原因的不同,可以将冲突分为两类,哪两类啊?叫。一行修改冲突和同行修改冲突一行修改冲突与与同行修改冲突。那现在说什么是异行修改冲突?什么是同行修改冲突?其实顾名思义。
07:14
一行出修改冲突,那就是两个客户端对于这个同一个文件啊,做这个修改呢。不是同一行的。多个客户端对同一版本文件做出修改,这些修改可以是任意的。添加。修改删除。只要他们修改的。不是同一行数据。那么此时引发的冲突称为一行修改冲突,写一下啊,多个客户端对同一版本。文件做出的。
08:02
修改可以是任意的添加。修改删除操作。只要。他们修改的不是同一行。数据内容。那么。此时。引发的冲突称为什么?E行E。好,修改冲突。这就是一行修改冲突。OK了。那么一行修改冲突啊,我们之所以先说他,是因为一行修改冲突好解决,也不用我们管。
09:07
因为他修改的不是同一行,所以我们的SVN呢。会给出比较简单的解决方解决方案。将这些修改直接合并。也就是说,大家的修改都起作用。这是他的解决方案。由于不同的客户端。的修改行是不相同的。所以SVN。给出了比较。简单的冲突解决方啊,什么将修改进行合并?
10:07
即大家的修改怎么都起作用,这就是一行修改冲突。那什么是同行修改修图?啊,那这个就简单了呀,多个客户端对同意。版本文件做出修改,可以是任意的添加、修改、删除操作。对吧。那那直接这样写吧。只要。啊,多个客户端。对同一版本文件。的同一行。数据进行了什么?
11:03
添加。修改。删除操作,此时引发的冲突称为。同行修改冲突。诶,这是什么,是同行修改冲突是吧,这个同行修改冲突啊,解决起来有点麻烦。怎么啦?由于不同客户端。对于同一版本文件的修改内容是不同的。SVN无法。对各个客户端。
12:03
的修改进行取舍啊,我用谁。不用谁,你让SVN系统让他去取舍,他没法取舍,即无法给出冲突解决方案,或者这样说,无法自动给出冲突解决方案。此时只能由人工进行。冲突内容的选择。即要人工。完成什么取舍?这里边儿会让我们人来选择,这就是他的解决方案,所以我们首先要清楚啊,你这个冲突。
13:08
是怎么引起的?当然了。这是纯粹的两种啊,那还有可能什么我的修改内容。这多个用户之间的修改内容,既存在异行修改冲突,也存在同行修改冲突,但不管怎么样,不管怎么样啊,你要知道。它可以具体的再划分。是不是?那就OK了。不过话说回来了,只要存在同行修改冲突。不管你是否包含一行。将来解决起来都是需要人工去取舍的。OK,这是冲突的分类。
我来说两句