00:00
这节课来看一下标签,标签是为了更方便的参考推销而给他标上易懂的一个名称。也可以理解为是对提交的一个啊,更详细的一个描述。Gate可以使用两种标签,轻标签和注解标签。打上的标签是固定的,它是跟随着我们提交的这次的一个历史记录,它不会像分支那样可以移动位置。首先看轻标签,轻标签只有一个名称的一个参数。注解标签它有名称,还有详细的一个注解,还有一个签名,一般情况下发布标签是采用注解标签来加注解或者签名轻标签,只是我们在本地啊,就是开发时的时候暂时或一次性的使用。我们来通过这个图看一下,这就是标签的一个作用,我们可以为每一次的一个提交啊,加上一个更详细的一个描述,也就是说打上一个标签一般多用于就是给某一次已经稳定的一个版本打上这个版本号。
01:01
通过标签,我们还可以轻易的从某一个标签为基础去切出来其他的一个新的分支,去进行新版本的一个迭代。接下来我们通过一个例子来看一下。事前的一个准备,新建一个目录,在里面建一个空的一个数据库,我们创建一个名为r market目录,之前我们演示的例子,有了这些目录啊,名字重复了,我们把这些都删掉。接下来新建一个目录。L。进入到这个目录,在这里打开G的终端。啊,就进到了这个目录里面。笔记这里是使用命令创建的目录,当然我们也可以使用命令啊,这里我们使用资源管理器创建。进到这个目录里面,使用get int把它初始化成一个空的。
02:00
本地的一个数据库啊,接着去添加啊,一个内容进行一次提交。新建一个。文档。来,Feel加。然后在里面写上啊这个内容。保存退出。在这里去查看当前的一个状态,可以看到增加了一个文件,加入到索引区,提交到。本地的数据库。来看一下目前的历史记录,应该就是这样的。接下来使用tag命令添加标签。它的语法是get tag,然后是标签的一个名字。在head指向的提交里添加Apple标签,执行下面这个命令啊,注意T这个。
03:03
啊。添加标签啊,如果你不指定后面不指定要给哪个历史记录进行标签添加的话,它默认是给当前还指向的这个位置历史记录去添加标签。下面我们来执行一下命令,为当前he指向的这个历史记录添加一个名为Apple的标签g t Apple。此时再来查看一下历史记录。可以看到啊,当前的hier指向的是啊。Master分支的这个历史提交记录,并且后面还多了一个tag。啊,有一个名字为Apple的一个tag,接下来添加一下注解标签,如果要添加注解标签,可以在T命令加上杠A选项参数啊,之后会启动这个边界区输入注解,当然我们也可以输入杠M选项。来加注解。
04:00
执行一下这个命令,我们添加一个名为banana的标签。Get。T-A啊加杠A参数。然后还可以加一个杠M参数,这样的话我们可以把注解直接写在命令行里,然后是只加杠A参数的话,它会给我们打开一个vim编辑器啊,你退出的话就会用很多的一个命令才能退出VM编辑器。我们直接把M写到这里,后面写我们的注解,比如说学习get。然后是标签的名字。回车,此时再使用get log看一下。当前。这里就会多一个T。然后还会有一个这个一个草稿。啊,使用get t,如果不加参数,可以显示当前所有的这个标签啊,如果加上杠N参数,还可以写上标签的一个注解,也是标签的描述,这里就是我们刚才加的这个注解,而我们的Apple标签是一个轻标签,并没有加这个注解,所以使用的默认的是我们提交的一个说明。
05:11
如何删除标签呢?删除标签使用杠D参数加上标签名就可以删除标签。Get tag。杠D,我们删除这个Apple标签。下面再来查看一下标签的一个列表。已经没有了那个Apple表现。接下来我们看一下标签的实际的一个应用。啊,利用标签我们可以使用。Check out,港币。然后创建一个新的分支,以某个标签名为基础去创建一个新的分支。因为。T本身指向的就是一个卡米塔,所以和根据卡米塔ID减出分支是一个道理啊,我们使用get checkout-B。
06:06
然后是新分支的名字,然后是考的ID,也可以减出来一个新的分支。啊,这个还可以根据一个本地已有的分值去检出新的分值,我们先以标签来演示一下标签的一个实际的一个应用。好,查看一下当前。呃,的一个历史记录啊,只有一个。提交记录。接下来我们增加一些提交记录。在。文件里面写入啊,写入一个新的一个内容。稳定的版本。查看一下状态,添加到索引区提交啊。稳定的版本,此时查看一下get日志。此时就有了一个新的提交记录啊,新的历史记录,我们认为这次的这个提交是一个可以发布的一个稳定版本,所以现在我们给它打上标签啊,认为这是啊1.0版本T-A。
07:17
加上M,可以写上我们的注解。V1.0。稳定版啊,后面写上我们标签的名字,V101.0。好,这样就给当前我们所在的啊,这个历史记录里面添加了标签,看一下日志。可以看到,这就有了一个tag为1.0。好后,后来我们又开发了其他的一个功能啊,接着写。其他的一个功能啊。保存。现在啊,查看一下状态,提交到索引区,再提交到。
08:07
历史记录里面。新功能。现在查看一下历史记录,又多了一个新功能的一个历史记录,好,现在来了一个新的一个需求,我们需要从V1.0上面啊,去切出来一个新的分支去开发我们啊V1.1。那怎么切呢?可以直接使用这个标签来进行切换。使用get checkout。杠B,我们认为这个新分支的一个名字就是啊V111.1。好。我们如果后面不加其他的参数了,就会以当前分值去切换这个版本啊,而我们当前分值所在的这个历史记录是它对吧,但是不是不符合我们的预期,我们是想要以这个啊历史记录为基础去切换一个新的分值,这个时候有几种方案我们后面可以写上。
09:07
这个卡ID也可以直接使用上标签好吧。我们先看一看标签。直接写上V1.0。好,这句话的意思就是get checkout-B啊,创建一个啊,名为V1.1的一个分支。啊,并切换到这个分支,然后以谁为基础去创建呢?以V1.0,也就是标签这个啊1.0。现在回车可以看到我们现在已经到了这个V1.1的这个分值,查看一下历史记录。当前hard的一个指向啊,是这个我们的稳定的这个版本,也就是标签是1.0的这个地方,对吧,这样就是一个通过标签来切换我们分支的一个实例。好,那么说了,我们checkout还可以根据ID切换是吧?现在我们来演示一下get checkout-B,再切换一个嗯,V。
10:05
一点。1.11啊的一个分支,然后以谁为基础呢?以这个commit ID为基础啊commit ID呢,你可以完全的去复制在整个ID,也可以只复制一部分,对吧,你甚至可以复制两三个都可以,你只要保证和你当前的。这个get本地数据仓库的所有的卡ID不重复啊就可以好,比如我们随便复制几个。Copy。粘贴。好,可以告诉我们切换到了这个V1.11啊,一个新的一个分值,此时我们看看V1.11的一个历史记录。可以看到和我们刚才使用标签切换是一样的,对吧。啊,当然。Get checkout-B,我们再切换一个新新的分支,比如说from啊BCH。
11:05
这个我们现在建立一个新的一个分支为from branch,然后它不仅这个后面不仅可以跟啊标签的名字commit ID,甚至可以跟本地的一些分支名字,比如我们写上must,就说以must分支啊为基础,去创建一个啊弗兰的一个分支回车。可以看到啊,现在已经在这个分支了。并且切换到了这个分支,查看一下它的一个历史记录。可以看到它是和这个must是一样的,对不对,这个就是我们的get checkout-B啊一个new branch。然后后面啊,这个里面可以写很多东西啊,这个里面可以写啊commit ID啊,也可以写这个T标签,也可以写已有的一个分支的名字。好吧,甚至还可以写远程的这个分支名字。
12:01
对吧,都是可以的啊,我们把这个括起来,它是一个整体啊,关于啊,如何使用get切的杠B去创建这个分支的这个问题。这里就介绍了这个标签的实际的一个应用。
我来说两句