Git:tag标签的使用
Git中tag标签的使用
一、什么是tag
tag是git版本库的一个标记,指向某个commit的指针。
tag主要用于发布版本的管理,一个版本发布之后,我们可以为git打上 v.1.0.1 v.1.0.2 ...这样的标签。
tag感觉跟branch有点相似,但是本质上和分工上是不同的:
tag 对应某次commit, 是一个点,是不可移动的。
branch 对应一系列commit,是很多点连成的一根线,有一个HEAD 指针,是可以依靠 HEAD 指针移动的。
所以,两者的区别决定了使用方式,改动代码用 branch ,不改动只查看用 tag。
tag 和 branch 的相互配合使用,有时候起到非常方便的效果,例如:已经发布了 v1.0 v2.0 v3.0 三个版本,这个时候,我突然想不改现有代码的前提下,在 v2.0 的基础上加个新功能,作为 v4.0 发布。就可以检出 v2.0 的代码作为一个 branch ,然后作为开发分支。
二、tag的简单使用
1.创建tag:
创建 tag 是基于本地分支的 commit,而且与分支的推送是两回事,就是说分支已经推送到远程了,但是你的 tag 并没有,如果把 tag 推送到远程分支上,需要另外执行 tag 的推送命令。
git tag <tagName> //创建本地tag
git push origin <tagName> //推送到远程仓库
若存在很多未推送的本地标签,你想一次全部推送的话:
git push origin --tags
以上是基于本地当前分支的最后的一个commit 创建的 tag ,但是如果不想以最后一个,只想以某一个特定的提交为tag ,也是可以的,只要你知道commit 的id。
git log --pretty=oneline //查看当前分支的提交历史 里面包含 commit id
git tag -a <tagName> <commitId>
2.查看标签
查看本地某个 tag 的详细信息:
git show <tagName>
查看本地所有 tag:
git tag 或者 git tag -l
查看远程所有 tag:
git ls-remote --tags origin
3.删除标签
本地 tag 的删除:
git tag -d <tagName>
远程 tag 的删除:
git push origin :<tagName>
4.检出标签
git checkout -b <branchName> <tagName>
因为 tag 本身指向的就是一个 commit,所以和根据commit id 检出分支是一个道理。
但是需要特别说明的是,如果我们想要修改 tag检出代码分支,那么虽然分支中的代码改变了,但是 tag标记的 commit还是同一个,标记的代码是不会变的,这个要格外的注意。
其它
命令git tag -a <tagname> -m "XXX..."
可以指定标签信息。
命令git tag -a v0.1.0 -m "release 0.1.0 version" 创建附注标签。
命令git checkout [tagname] 切换标签。
Git:tag标签的使用相关推荐
- git tag 标签重命名
git tag 标签重命名 今天手滑,居然将tag的版本号打错了,偷偷抓紧修改了一下 将v6.2.0重命名为v6.6.2 新版本号:v6.6.2 错误版本号:v6.2.0 参考: https://co ...
- git branch分支创建、切换、合并,git tag标签
一)Git分支简介 每一种版本控制系统都以某种形式支持分支.使用分支意味着你可以从开发主线上分离开来,然后在不影响主线的同时继续工作. 列出分支命令:git branch 创建分支命令:git bra ...
- Git 之 git tag标签使用
目录 一.简介 二.本地tag操作 1.创建tag标签 (1)创建轻量标签 (2)创建附注标签 2.查看tag标签 (1)查看标签列表 (2)查看标签提交信息 (3)在提交历史中查看标签 3.删除ta ...
- git命令之git tag 给当前分支打标签
git tag - 标签相关操作 发表于 2011年06月29日 由 机器猫 标签可以针对某一时间点的版本做标记,常用于版本发布. 列出标签 $ git tag # 在控制台打印出当前仓库的所有标签 ...
- 查看git当前tag_Git Tag 标签详解
Git Tag 标签 git tag 按字母排序显示标签 git tag v1.01 打上v1.01这个标签 git show v1.01 显示这个标签的详情 可以同时打多个tag指向同一个时间点上的 ...
- jenkins 通过tag标签部署代码
配置Git Parameter(需要安装插件),参数 步骤:选择代码部署的任务"test02"---->选择任务的"配置"--------->如下图 ...
- Git使用 从入门到入土 收藏吃灰系列 (十三) git stash、git check-pick、git tag、git diff
文章目录 一.前言 二.git stash 存储到堆栈 三.Git tag 标签 四.git cherry-pick 挑选合并 五.git diff 本节速览 git stash 堆栈 git tag ...
- Git tag 打标签
Git tag 给当前分支打标签 给指定的commit打Tag 打Tag不必要在head之上,也可在之前的版本上打,这需要你知道某个提交对象的校验和(通过git log获取). 补打Tag $ git ...
- 【Git】Git 标签使用 ( 查询哈希码 | 创建标签 git tag v1.0 | 查询标签 git tag | 查询标签信息 git show v1.0 | 创建标签并指定说明 | 删除标签 )
文章目录 一.查询提交记录哈希码 1.git log --pretty=oneline --abbrev-commit 2.git reflog 二.为某个提交设置标签 git tag v1.0 23 ...
- git 远程分支和tag标签的操作
git远程分支操作: 1.创建远程分支 git push --set-upstream origin develop:develop2 在服务器创建远程分支devlop2,让本地的develop分支和 ...
最新文章
- TensorFlow 安装protoc
- webpack 打包编译优化之路
- 冒泡排序算法[C++]
- 【自动化__持续集成】___java___XML__DOM4操作
- 高考还没结束,这份试卷已经流出,你能拿多少分?
- 基于selenium的钓鱼工具:关于ReelPhish神器的使用
- [转]10个学习Android开发的网站推荐
- paramiko获取远程主机的环境变量
- zookeeper的zxid
- 制作纯净版WinPE2.0
- 创业者该如何给员工画饼、圆饼?
- Win10怎么提高显卡游戏性能
- java为什么是静态的_为什么此方法必须是静态的(Java)?
- 【原创游戏】迷踪失路——恐怖风格的第一人称迷宫游戏
- 数据仓库系列4-维度表
- 软件测试面试题之非技术面试(GZH:软件测试大本营)
- 2022计算机软件毕业设计大全
- 【水花的2021年度总结】
- Qt实现中国象棋:(七)悔棋
- 算法导论-上课笔记11:单源最短路径