本系列包含:
- Git 图文详解(一):简介及基础概念
- Git 图文详解(二):Git 安装及配置
- Git 图文详解(三):常用的 Git GUI
- Git 图文详解(四):Git 使用入门
- Git 图文详解(五):远程仓库
- Git 图文详解(六):Git 利器 - 分支
- Git 图文详解(七):标签管理
- Git 图文详解(八):后悔药 - 撤销变更
- Git 图文详解(九):工作中的 Git 实践
 
 
   Git 图文详解(七):标签管理 
  
 
标签(Tags)指的是某个分支某个特定时间点的状态,是对某一个提交记录的 固定 “指针” 引用。一经创建,不可移动,存储在工作区根目录下 .git\refs\tags。可以理解为某一次提交(编号)的别名,常用来标记版本。所以发布时,一般都会打一个版本标签,作为该版本的快照,指向对应提交 commit。
当项目达到一个关键节点,希望永远记住那个特别的提交快照,你可以使用 git tag 给它打上标签。比如我们今天终于完成了  
     
      
       
       
         V 
        
       
         1.1 
        
       
      
        V1.1 
       
      
    V1.1 版本的开发、测试,并成功上线了,那就可给今天最后这个提交打一个标签  
     
      
       
       
         V 
        
       
         1.1 
        
       
      
        V1.1 
       
      
    V1.1,便于版本管理。
默认标签是打在最新提交的 commit 上的,如果希望在指定的提交上打标签则带上提交编号(commit id):git tag v0.9 f52c633。

|  |  | 
|---|---|
| git tag | 查看标签列表 | 
| git tag -l ‘a*’ | 查看名称是 a开头的标签列表,带查询参数 | 
| git show [tagname] | 查看标签信息 | 
| git tag [tagname] | 创建一个标签,默认标签是打在最新提交的 commit上的 | 
| git tag [tagname] [commit id] | 新建一个 tag在指定commit上 | 
| git tag -a v5.1 -m ‘v5.1版本’ | 创建标签 v5.1,-a指定标签名,-m指定说明文字 | 
| git tag -d [tagname] | 删除本地标签 | 
| git checkout v5.1 | 切换标签,同切换分支 | 
| git push [remote] v5.1 | 推送标签,标签不会默认随代码推送推送到服务端 | 
| git push [remote] --tags | 提交所有 tag | 
如果要推送某个标签到远程,使用命令 git push origin [tagname],或者,一次性推送全部到远程:git push origin --tags
# tag
$ git tag -a 'v1' -m 'v1版本'
$ cat .git/refs/tags/v1
a2e2c9caea35e176cf61e96ad9d5a929cfb82461
 
# 查看标签列表
$ git tag
v1










