Git 可以给仓库历史中的某一个提交打上标签,以示重要。比较有代表性的是人们会使用这个功能来标记发布结点( v1.0v2.0 等等)。

1 列出标签

Git 中列出已有的标签非常简单,只需要输入git tag(可带上可选的-l选项--list):

$ git tagv1.0v2.0
2 创建标签

Git 支持两种标签:轻量标签(lightweight)与附注标签(annotated)。轻量标签很像一个不会改变的分支——它只是某个特定提交的引用。附注标签是存储在 Git 数据库中的一个完整对象, 它们是可以被校验的,其中包含打标签者的名字、电子邮件地址、日期时间, 此外还有一个标签信息,并且可以使用 GNU Privacy Guard (GPG)签名验证。

  • 轻量标签

Git 中创建附注标签十分简单。最简单的方式是当你在运行 tag 命令时指定 -a 选项:

$ git tag -a v0.2 -m "my version 0.2"$ git tagv0.1v0.2

-m 选项指定了一条将会存储在标签中的信息。

  • 附注标签轻量标签本质上是将提交校验和存储到一个文件中——没有保存任何其他信息。创建轻量标签,不需要使用-a-s-m 选项,只需要提供标签名字:
$ git tag v1.4-lw$ git tagv0.1v1.3v1.4v1.4-lw

使用 git show 命令可以看到标签信息和与之对应的提交信息:

3 共享标签

默认情况下,git push 命令并不会传送标签到远程仓库服务器上。在创建完标签后你必须显式地推送标签到共享服务器上。这个过程就像共享远程分支一样——你可以运行 git push origin

$ git push origin v1.5Counting objects: 14, done.Delta compression using up to 8 threads.Compressing objects: 100% (12/12), done.Writing objects: 100% (14/14), 2.05 KiB | 0 bytes/s, done.Total 14 (delta 3), reused 0 (delta 0)To git@github.com:schacon/simplegit.git * [new tag]         v1.5 -> v1.5
4 删除标签

使用命令 git tag -d

$ git tag -d v1.4-lwDeleted tag 'v1.4-lw' (was e7d5add)
5 检索标签

如果你想查看某个标签所指向的文件版本,可以使用 git checkout 命令, 这会使你的仓库处于“分离头指针(detached HEAD)”的状态。

$ git checkout 2.0.0Note: checking out '2.0.0'.

You are in 'detached HEAD' state. You can look around, make experimental
6 后期打标签
$ git log --pretty=oneline15027957951b64cf874c3557a0f3547bd83b3ff6 Merge branch 'experiment'a6b4c97498bd301d84096da251c98a07c7723e65 beginning write support0d52aaab4479697da7686c15f77a3d64d9165190 one more thing6d52a271eda8725415634dd79daabbc4d9b6008e Merge branch 'experiment'0b7434d86859cc7b8c3d5e1dddfed66ff742fcbc added a commit function4682c3261057305bdd616e23b64b0857d832627b added a todo file166ae0c4d3f420721acbb115cc33848dfcc2121a started write support9fceb02d0ae598e95dc970b74767f19372d61af8 updated rakefile964f16d36dfccde844893cac5b347e7b3d44abbc commit the todo8a5cbc430f1a9c3d00faaeffd07798508422908a updated readme

假设在v1.2 时你忘记给项目打标签,也就是在 “updated rakefile” 提交。你可以在之后补上标签。要在那个提交上打标签,你需要在命令的末尾指定提交的校验和(或部分校验和):

$ git tag -a v1.2 9fceb02
$ git tagv0.1v1.2v1.3v1.4v1.4-lwv1.5

$ git show v1.2tag v1.2Tagger: Scott Chacon Date:   Mon Feb 9 15:32:16 2009 -0800version 1.2commit 9fceb02d0ae598e95dc970b74767f19372d61af8Author: Magnus Chacon Date:   Sun Apr 27 20:43:35 2008 -0700    updated rakefile...

           引领技术内容新高度专业岢編程丗堺微信:zac-codingQQ:894389175

git 列出远程标签_Git 标签管理相关推荐

  1. git 列出标签_Git标签介绍:如何在Git中列出,创建,删除和显示标签

    git 列出标签 Tagging lets developers mark important checkpoints in the course of their projects' develop ...

  2. git master主分支_Git分支管理策略及简单操作

    前几天整理了一下之前项目的开发代码,当时使用了Git来进行代码版本管理.虽然本人熟悉常用的Git操作,但是对分支的管理经验非常欠缺.拿这个项目来说,在项目中有不下20个分支,每个分支间的继承关系相当之 ...

  3. git checkout远程分支_Git检出远程分支

    如果贡献者有自己的 Git 仓库,并将修改推送到此仓库中,那么当你拿到仓库的访问地址和对应分支的名称后,就可以加为远程分支,然后在本地进行合并. 比如,Jessica 发来一封邮件,说在她代码库中的  ...

  4. git checkout 远程分支_git的远程分支是干啥的,和本地的有什么区别?

    不知道大家有没有经历过,当我们切换到了一个新的分支想要提交代码的时候,总会遇到这样的错误. 我们把日志里的英文翻译过来是说,我们当前的分支没有设置任何上游分支.然后git提示我们可以运行下面这行代码来 ...

  5. 代码管理平台介绍、安装svn、客户端使用svn、远程仓库、分支管理、标签管理、git别名、搭建git服务、安装gitlab、简单使用gitlab、备份和恢复

    22.1 代码管理平台介绍 现在的开发工作都是由团队合作来完成开发,通常都是团队中的每个人或者每几个人完成一个模块的开发,最后再将模块拼凑起来,形成一个完整的项目,这就涉及到了协同开发.在各个模块的开 ...

  6. Git学习(四)标签管理

    标签管理 git学习参考 廖雪峰官方网站 git基本操作,一篇文章就够了! 一.标签管理 发布一个版本时,我们通常先在版本库中打一个标签(tag),这样,就唯一确定了打标签时刻的版本.将来无论什么时候 ...

  7. git——04 远程仓库/标签/别名

    远程仓库的使用 为了能在任意 Git 项目上协作,你需要知道如何管理自己的远程仓库. 远程仓库是指托管在因特网或其他网络中的你的项目的版本库. 你可以有好几个远程仓库,通常有些仓库对你只读,有些则可以 ...

  8. git push 的符号笔有什么用_Git 标签(tag)作用、分支区别及常用命令

    Git 跟其它版本控制系统一样,可以对某一时间点上的版本打上标签.在做版本发布的时候经常会用到.尽管 Git 只实现了一种标签对象,但是有两种基本的标签类型,通常称为轻量级的(lightweight) ...

  9. 将当前的head推送到远程_Git 通俗易懂系列 三、远程仓库和标签

    远程仓库 git remote :列出每个远程库的简短名字.如:origin. git remote -v :显示对应的克隆地址,如: originhttp://gitlab.xxx.corp/xxx ...

最新文章

  1. 那个脑袋生锈的我写的东西
  2. SparkStreaming读取Socket数据
  3. shell-单引号 ,双引号,反引号,括号详解
  4. 2013年7月12日“修复 Migration 测试发现的 Bug”
  5. JQuery获取元素的N种方法
  6. MUI框架之输入框Input
  7. Web开发融会贯通: 深入浅出 告别浮云
  8. 33 个送给 Java 程序员的练手项目合集
  9. 执行dos命令,不出现黑色的dos窗口
  10. Eclipse搭建Android开发环境(安装ADT,Android4.4.2)
  11. python中随机输入数字再排序
  12. 手机怎么能把书签导出来_成人高考能在手机上报名吗?成人高考怎么缴费?
  13. Ubuntu中apt与apt-get命令的区别
  14. Word Cookbook by Eric
  15. mysql连接池cp_BeeCP
  16. 批量导出数据和全部导出到Excel(详细)和mybatis 中 Foreach的用法
  17. html5 回合制网页游戏,盘点史上最流行的十款回合制网页游戏
  18. AI人工智能专业词汇集
  19. C语言,switch语句系列
  20. 低成本、快速造测试数据,这个工具你指的拥有

热门文章

  1. 北京图王软件开发有限公司产品介绍-Visual Graph专业图形引擎
  2. ajaxFileUpload连续上传文件时,从第二次开始不触发change事件
  3. java中的逆变、协变、不变概念讲解转载自http://www.cnblogs.com/en-heng/p/5041124.html,感谢编程路上的前辈们!
  4. 【它山之玉】Trump:让人们发出噢、啊的惊叹声!—科学网马臻
  5. Flutter图表库fl_chart的使用解析(二)-折线图,金九银十
  6. 计算机网络(标准化工作及相关组织)
  7. python 网格交易源码_【宽客策略源码】网格交易(期货)
  8. vb.net与vb的区别
  9. VB与VB.NET区别
  10. php水解蛋白技术,乳蛋白部分水解配方奶粉:美赞臣亲舒