git 添加tag
前言
什么是tag?tag是节点的意思,一般在上线的时候使用。比如说:你在本地做了好几个功能,然后把这些功能提交到了上线的分支上,某个时刻,你想上线你的新功能,这个时候你需要你个tag来标记一下,告诉自己和别人,我是在这个地方上线的。当然,你完全也可以不这样做,但是如果你不这样做的话,你该怎么判别你是在哪里上线的代码呢?通过commit的信息吗?当然也是可以的,不过你需要一个个的看commit的信息,你不觉得有点麻烦吗?
其实很多功能和操作用另一种方式都能实现,但新功能的出现往往是因为用旧的方式处理比较麻烦,所以我们才搞了个新的方法出来,tag就是一个很明显的例子。
简述
作为版本管理工具,Git可以对某个版本打上标签(tag),表示本版本为发行版。在发布软件,以及使用CocoaPods创建依赖库等情况时,需要对其版本使用标签注释。故简单总结一下添加tag的方式。
使用Git命令
查看标签
打印所有标签
git tag`
打印符合检索条件的标签
git tag -l <版本号>
如 git tag -l 1.*.* 为搜索一级版本为1的版本
查看对应标签状态
git checkout <版本号>
创建本地标签
创建轻量标签
轻量标签指向一个发行版的分支,其只是一个像某commit的引用,不存储名称时间戳及标签说明等信息。定义方法如下
git tag <版本号>-light
创建带附注标签
相对于轻量标签,附注标签是一个独立的标签对象,包含了名称时间戳以及标签备注等信息,同时指向对应的commit。定义方法如下
git tag -a <版本号> -m "<备注信息>"
同时我们也可以像特定的commit添加标签,使用该commit对应的SHA值即可
git tag -a <版本号> <SHA值> -m "<备注信息>"
比如 git tag -a 1.0.0 0c3b62d -m "Release Edition v1.0.0" 就是为SHA为0c3b62d的这次提交打了1.0发行版的tag
删除本地标签
git tag -d <版本号>
将本地标签提交到远程仓库
前面所提到的创建标签,只是将标签添加到了本地的版本管理,我们需要在创建之后将本地标签同步到远程仓库,如Github。
推送所有标签
git push origin --tags
推送指定版本的标签
git push origin <版本号>
删除远程仓库的标签
同创建本地标签一样,删除了本地标签之后也要同时删除远程仓库的标签。
新版本Git (> v1.7.0)
git push origin --delete <版本号>
新旧版本通用方法
旧版本Git并没有提供直接删除的方法,而我们可以通过将一个空标签替换现有标签来实现删除标签,即如下命令
git push origin :refs/tags/<版本号>
总结
最后总结一下常用命令,方便查阅。
/// 查看标签
// 打印所有标签
git tag
// 打印符合检索条件的标签
git tag -l 1.*.*
// 查看对应标签状态
git checkout 1.0.0 /// 创建标签(本地)
// 创建轻量标签
git tag 1.0.0-light
// 创建带备注标签(推荐)
git tag -a 1.0.0 -m "这是备注信息"
// 针对特定commit版本SHA创建标签
git tag -a 1.0.0 0c3b62d -m "这是备注信息" /// 删除标签(本地)
git tag -d 1.0.0 /// 将本地标签发布到远程仓库
// 发送所有
git push origin --tags
// 指定版本发送
git push origin 1.0.0 /// 删除远程仓库对应标签
// Git版本 > V1.7.0
git push origin --delete 1.0.0
// 旧版本Git
git push origin :refs/tags/1.0.0
--------------------- 本文来自 MinecodeAir 的CSDN 博客 ,全文地址请点击:https://blog.csdn.net/b735098742/article/details/78935748?utm_source=copy
git 添加tag的更多相关文章
- 使用Git添加Tag的方法
简述作为版本管理工具,Git可以对某个版本打上标签(tag),表示本版本为发行版.在发布软件,以及使用CocoaPods创建依赖库等情况时,需要对其版本使用标签注释.故简单总结一下添加tag的方式. ...
- git基本命令--tag, alias,
git tag: 列出标签 在 Git 中列出已有的标签是非常简单直观的. 只需要输入 git tag: $ git tag v0. v1. 这个命令以字母顺序列出标签:但是它们出现的顺序并不重要. ...
- git 添加文件
git 添加文件三步骤 git add filename git commit -m 'remarks' git push origin master
- git添加标签(转载)
From:http://git-scm.com/book/zh/v1/Git-%E5%9F%BA%E7%A1%80-%E6%89%93%E6%A0%87%E7%AD%BE 打标签 同大多数 VCS 一 ...
- Git添加远程库和从远程库中获取(新手傻瓜式教学)
一. Git添加远程库 1.在本地新建一个文件夹,在该文件夹使用Git工具,运行$ git init,将该文件夹变为本地Git仓库,同时会生成一个隐藏的.git文件夹. 2.在该文件夹中用Not ...
- Git添加远程库和从远程库中获取
一. Git添加远程库 1. 在本地新建一个文件夹,在该文件夹使用Git工具,运行$ git init,将该文件夹变为本地Git仓库,同时会生成一个隐藏的.git文件夹. 2. 在该文件夹中用Note ...
- git 添加管理成员
git 添加管理成员 登录git后的样子: 具体操作流程看截图和说明 : * 图中1:打开设置面板: * 图中2:打开成员面板: * 图中3:添加成员功能标签: * 图中4:添加的成员,这里会弹出 ...
- git 创建tag , 查看tag , 删除tag
简介 用git了很久了,也喜欢这个版本控制工具,今天来分享下,怎么用命令创建tag,查看tag,删除tag和把本地tag推到远程git服务器上 C:\Users\\WandaPuHuiProject ...
- Git打Tag相关操作
一.打标签 git tag -a 0.1.3 -m “Release version 0.1.3″ 详解: git tag 是命令 -a 0.1.3是增加 名为0.1.3的标签 -m 后面跟着的是标签 ...
随机推荐
- Linux服务器配置---安装centos
安装centos 1.插入光盘,启动,可以选择第一项进行安装 2.根据实际需求,一般会选择skip 3.选择语言“简体中文” 4.选择第一项 5.设置主机名字,使用默认 6.选择时区 7.设置超级用户 ...
- php抛出异常
php抛出异常:throw new Exception("xxxxxx!"); 实例代码: try{ if ($mysqli->connect_errno) { sleep( ...
- 2016NOI冬令营day0
上午写了一道题. 中午收拾好东西后兴高采烈地坐老司机开的出租车来到了美丽的南山中学!!!:) 志愿者太多了,弄得我们有点不好意思......:) 来到寝室,看到了传闻中的被子&空(kong4) ...
- web应用下的安全问题以及tomcat/nginx对应解决方法(持续更新、亲测可解决问题)
最近一券商那边扫描反馈了下面几个非业务型安全漏洞,要求解决,如下: XSS 自己写个脚本response的时候对特殊字符进行了处理,或者网上搜下一堆(不要忘了回车.换行). HTML form wit ...
- C++设计模式 之 “单一职责”模式:Decorator、Bridge
part 1 “单一职责”模式 在软件组件的设计中,如果责任划分的不清晰,使用继承得到的结果往往是随着需求的变化,子类急剧膨胀,同时充斥着重复代码,这时候的关键是划清责任. 典型模式 Decorato ...
- OpenCV相关网站推荐(Informative websites related to OpenCV)
原文来自:http://answers.opencv.org/question/69691/informative-websites-related-to-opencv/ i think it wil ...
- Salty Fish 结对学习心得体会及创意照 (20165211 20165208)
小组结对学习心得体会及创意照 在阅读了软件工程讲义 3 两人合作(2) 要会做汉堡包和现代软件工程讲义 3 结对编程和两人合作后,加之对于这几周组队学习的感悟,我们对于组队学习的一些感悟和想法如下: ...
- uboot启动提示Error, wrong i2c adapter 0 max 0 possible后卡住了怎么办
答:这个与i2c驱动有关,应该使能i2c驱动相关的配置项
- luoguP2572 [SCOI2010]序列操作
题目&&链接 反正数据都是一样的,luogu比较友好 luogu bzoj lxhgww最近收到了一个01序列,序列里面包含了n个数,这些数要么是0,要么是1,现在对于这个序列有五种变 ...
- 【第二十一章】 springboot + 定时任务
1.application.properties #cron job.everysecond.cron=0/1 * * * * * job.everytensecond.cron=0/10 * * * ...