git 标签(tag)操作

  • 标签(tag)操作

    标签(tag)操作允许为存储库中的特定版本赋予有意义的名称。假设Tom和Jerry决定标记他们的项目代码,以便他们以后可以轻松地访问它。
  • 创建标签

    让我们使用git tag命令标记当前的HEAD 。Tom使用-a选项提供标签名称,并使用–m选项提供标签消息。
    
    [tom@CentOS project]$ pwd
    /home/tom/top_repo/project
    
    [tom@CentOS project]$ git tag -a 'Release_1_0' -m 'Tagged basic string operation code' HEAD
    
    如果要标记特定的提交,请使用适当的COMMIT ID而不是HEAD指针。Tom使用以下命令将标签推送到远程存储库中。
    
    [tom@CentOS project]$ git push origin tag Release_1_0
    
    上面的命令将产生以下结果-
    
    Counting objects: 1, done.
    Writing objects: 100% (1/1), 183 bytes, done.
    Total 1 (delta 0), reused 0 (delta 0)
    To gituser@git.server.com:project.git
    * [new tag]
    Release_1_0 −> Release_1_0
    
  • 查看标签

    Tom创建了标签。现在,Jerry可以使用带有–l选项的git tag命令来查看所有可用的标签。
    
    [jerry@CentOS src]$ pwd
    /home/jerry/jerry_repo/project/src
    
    [jerry@CentOS src]$ git pull
    remote: Counting objects: 1, done.
    remote: Total 1 (delta 0), reused 0 (delta 0)
    Unpacking objects: 100% (1/1), done.
    From git.server.com:project
    * [new tag]
    Release_1_0 −> Release_1_0
    Current branch master is up to date.
    
    [jerry@CentOS src]$ git tag -l
    Release_1_0
    
    Jerry使用git show命令及其标签名称来查看有关标签的更多详细信息
    
    [jerry@CentOS src]$ git show Release_1_0
    
    上面的命令将产生以下结果-
    
    tag Release_1_0
    Tagger: Tom Cat <tom@jc2182.com>
    Date: Wed Sep 11 13:45:54 2013 +0530
    
    Tagged basic string operation code
    
    
    commit 577647211ed44fe2ae479427a0668a4f12ed71a1
    Author: Tom Cat <tom@jc2182.com>
    Date: Wed Sep 11 10:21:20 2013 +0530
    
    Removed executable binary
    
    diff --git a/src/string_operations b/src/string_operations
    deleted file mode 100755
    index 654004b..0000000
    Binary files a/src/string_operations and /dev/null differ
    
  • 删除标签

    Tom使用以下命令从本地存储库和远程存储库中删除标签。
    
    [tom@CentOS project]$ git tag
    Release_1_0
    
    [tom@CentOS project]$ git tag -d Release_1_0
    Deleted tag 'Release_1_0' (was 0f81ff4)
    # Remove tag from remote repository.
    
    [tom@CentOS project]$ git push origin :Release_1_0
    To gituser@git.server.com:project.git
    - [deleted]
    Release_1_0