一、标签是什么

  发布一个版本时,我们通常先在版本库中打一个标签,这样,就唯一确定了打标签时刻的版本。将来无论什么时候,取某个标签的版本,就是把那个打标签的时刻的历史版本取出来。所以,标签也是版本库的一个快照。

  Git的标签虽然是版本库的快照,但其实它就是指向某个commit的指针(跟分支很像对不对?但是分支可以移动,标签不能移动),所以,创建和删除标签都是瞬间完成的。

二、创建标签

  Git 使用的标签有两种类型:轻量级的(lightweight)和含附注的(annotated)。轻量级标签就像是个不会变化的分支,实际上它就是个指向特定提交对象的引用。而含附注标签,实际上是存储在仓库中的一个独立对象,它有自身的校验和信息,包含着标签的名字,电子邮件地址和日期,以及标签说明,标签本身也允许使用 GNU Privacy Guard (GPG) 来签署或验证。一般我们都建议使用含附注型的标签,以便保留相关信息;当然,如果只是临时性加注标签,或者不需要旁注额外信息,用轻量级标签也没问题。
1.创建轻量级的标签

$ git tag v1.0 //v1.0即为标签名,也可理解为定义的版本名,默认标签是打在最新提交的commit上的

$ git tag v0.9 commitId //指定为某个提交ID创建标签

2.创建含附注的标签

$ git tag -a v1.4 -m 'my version 1.4'

3.创建签署标签

$ git tag -s v1.0 -m 'my signed version 1.0'

注意:签名采用PGP签名,因此,必须首先安装GPG,如果没有找到gpg,或者没有gpg密钥对,就会报错

三、查看标签

1.查看所有标签

$ git tag

显示的标签按字母顺序排列,所以标签的先后并不表示重要程度的轻重。

2.用特定的搜索模式列出符合条件的标签(如下列出标签名前面为v1.的所有标签)

$ git tag -l 'v1.*'

3.使用 git show 命令查看标签的信息

$ git show v1.0

四、操作标签

$ git push origin <tagname> //可以推送一个本地标签

$ git push origin --tags //可以推送全部未推送过的本地标签

$ git tag -d <tagname> //可以删除一个本地标签

$ git push origin :refs/tags/<tagname> //可以删除一个远程标签

五、其他

  配置别名及搭建Git服务器,由于本人是新学,在网上找了大神写的git博客,在此分享!详情请点击

Git学习笔记(四)标签和搭建Git服务的更多相关文章

  1. Git学习笔记(10)——搭建Git服务器

    本文主要记录了Git服务器的搭建,以及一些其他的配置,和最后的小总结. Git远程仓库服务器 其实远程仓库和本地仓库没啥不同,远程仓库只是每天24小时开机为大家服务,所以叫做服务器.我们完全可以把自己 ...

  2. git 学习笔记 -- 创建标签

    在Git中打标签非常简单,首先,切换到需要打标签的分支上: $ git branch * dev master $ git checkout master Switched to branch 'ma ...

  3. git 学习笔记---操作标签

    如果标签打错了,也可以删除: $ git tag -d v0.1 Deleted tag 'v0.1' (was f15b0dd) 因为创建的标签都只存储在本地,不会自动推送到远程.所以,打错的标签可 ...

  4. Git学习笔记四--远程仓库

    Git远程仓库 Git是分布式版本控制系统,同一个Git仓库,可以分布到不同的机器上. 怎么分布呢?最早,肯定只有一台机器有一个原始版本库,此后,别的机器可以“克隆”这个原始版本库,而且每台机器的版本 ...

  5. Git学习总结(5)——搭建Git简易高效服务器

    1. mysysgit+gitblit安装流程 1.1资源  需先下载好的资源(公司用的1.6,1.7+请自行匹配对应的mysysgit+gitblit):  jdk1.6  Git-1.8.4-pr ...

  6. Git学习笔记(四)

    一.忽略特殊文件 在Git工作区的根目录下创建一个特殊的.gitignore文件,然后把要忽略的文件名填进去,Git就会自动忽略这些文件. 不需要从头写.gitignore文件,GitHub已经为我们 ...

  7. Pro Git 学习笔记

    Pro Git 学习笔记 文档地址:Pro Git原文地址:PRO GIT 学习笔记 git常见命令 1.Git起步 初次运行Git前的配置 用户信息 git config --global user ...

  8. [.net 面向对象程序设计进阶] (25) 团队开发利器(四)分布式版本控制系统Git——使用GitStack+TortoiseGit 图形界面搭建Git环境

    [.net 面向对象程序设计进阶] (25) 团队开发利器(四)分布式版本控制系统Git——使用GitStack+TortoiseGit 图形界面搭建Git环境 本篇导读: 前面介绍了两款代码管理工具 ...

  9. 【转帖】Git学习笔记 记录一下

    本文内容参考了廖雪峰老师的博文,并做了适当整理,方便大家查阅. 原帖地址 https://wangfanggang.com/Git/git/ 常用命令 仓库初始化 - git init 1 git i ...

随机推荐

  1. linux基础(2)-网卡配置

    常用网卡配置参数 DEVICE=eth0     #指出设备名称 HWADDR=00:0C:29:3C:D2:CA     #网卡的mac地址TYPE=Ethernet     #网络类型为Ether ...

  2. myeclipse下搭建hadoop2.7.3开发环境

    需要下载的文件:链接:http://pan.baidu.com/s/1i5yRyuh 密码:ms91 一  下载并编译  hadoop-eclipse-plugin-2.7.3.jar 二  将had ...

  3. rem根据网页的根元素(html)来设置字体大小

    rem根据网页的根元素来设置字体大小,和em(font size of the element)的区别是,em是根据其父元素的字体大小来设置,而rem是根据网页的跟元素(html)来设置字体大小

  4. 10.0.4_CentOS_120g

    对应 VMware Workstation 版本为:“10.0.4 build-2249910”

  5. MySql基础学习-Sql约束

    1.主键约束(PRIMARY KEY) 主键 (PRIMARY KEY)是用于约束表中的一行,作为这一行的唯一标识符,在一张表中通过主键就能准确定位到一行,因此主键十分重要.主键不能有重复且不能为空. ...

  6. Python快速学习-高级特性

    1.切片 取一个list或tuple的部分元素是非常常见的操作 L = ['hello','the','world','and','my','love'] 取前三个元素 L[0:3],L[:3] 取倒 ...

  7. VMware Workstation Pro v14.0

    早些时候戴尔旗下的虚拟化软件 VMware Pro v14 版正式发布,本次更新主要是优化对创意者更新版的支持. 创意者更新版是目前微软 Windows 10 系统的最新版本,该版本亦会在十月份成为C ...

  8. MVC。

    mvc 开启客户端 和 远程验证 <appSettings> <add key="ClientValidationEnabled" value="tru ...

  9. ural 2019 Pair: normal and paranormal

    2019. Pair: normal and paranormal Time limit: 1.0 secondMemory limit: 64 MB If you find yourself in ...

  10. Ceph的现状

    转自:https://www.ustack.com/blog/ceph-distributed-block-storage/ 1. Ceph简介 Ceph是统一分布式存储系统,具有优异的性能.可靠性. ...