reference to : http://www.cnblogs.com/ShaYeBlog/p/5576601.html
我们常常在代码封板时,使用git 创建一个tag ,这样一个不可修改的历史代码版本就像被我们封存起来一样,不论是运维发布拉取,或者以后的代码版本管理,都是十分方便的.
首先我们了解下 git 的 tag 功能:
git 下打标签其实有2种情况
(1): 轻量级的
它其实是一个独立的分支,或者说是一个不可变的分支.指向特定提交对象的引用.
(2):带附注的
实际上是存储在仓库中的一个独立对象,它有自身的校验和信息,包含着标签的名字,标签说明,标签本身也允许使用 GNU Privacy Guard (GPG) 来签署或验证,电子邮件地址和日期,一般我们都建议使用含附注型的标签,以便保留相关信息.
可以依据自己的情况选择TAG类型。
以第二种为例子:
创建标签:
上面的命令我们成功创建了本地一个版本 V1.2 ,并且添加了附注信息 ‘WebSite version 1.2’
查看标签:
我们看到本地有3个标签,最下面的 V1.2 就是刚才提交的,但是没有显示出来我们附注信息.
要显示附注信息,我们需要用 show 指令来查看.
上面显示出来了 V1.2 标签的所有提交信息.
但是目前这个标签仅仅是提交到了本地git仓库.如何同步到远程代码库
tag 远程推送:
这样我们就把本地版本推送到了远程代码仓库.
如果刚刚同步上去,你缺发现一个致命bug ,需要重新打版本,现在还为时不晚.
删除标签:
到这一步我们只是删除了本地 V1.2的版本,可是线上V1.2的版本还是存在,如何办?
这时我们可以推送的空的同名版本到线下,达到删除线上版本的目标:
这样我们可以精准拉取指定的某一个版本.适用于运维同学部署指定版本.
最后验证远程服务器TAG :
git@git.com:xxx/xxx.git 可以省略。