Git系列六之标签管理
1.Git标签管理
当版本仓库内的数据有个大的改善或者功能更新,我们经常会打一个类似于软件版本号的标签,这样通过标签就可以将版本库中的某个历史版本给记录下来,方便我们随时将特定历史时期的数据取出来用,另外打标签其实只是像某个历史版本做了一个指针,所以一般都是瞬间完成的。
1.1创建本地标签
创建带有说明的标签,-a指定标签名字,-m指定说明文字
[root@git-node1 demo]# git tag -a v1.0.0 -m "version 1.0.0 release"
1.2查看本地标签
1.查看当前本地所有标签
[root@git-node1 demo]# git tag -l v*v1.0.0v1.0.1
2.查看当前1.0版本的详细信息
[root@git-node1 demo]# git show v1.0.0tag v1.0.0Tagger: xuliangwei <xuliangwei@foxmail.com>Date: Sun Nov 6 03:12:44 2016 +0800version 1.0.0 releasecommit 95734131860ef7c9078b8a208ff6437d0952380bAuthor: xuliangwei <xuliangwei@foxmail.com>Date: Sun Nov 6 02:15:35 2016 +0800chnged name index.html->index.phpdiff --git a/index.html b/index.htmldeleted file mode 100644index e69de29..0000000diff --git a/index.php b/index.phpnew file mode 100644index 0000000..e69de29
1.3删除本地标签
我们为同一个提交版本设置了两次标签,删除重复性的标签
[root@git-node1 demo]# git tag -d v1.0.1已删除 tag 'v1.0.1'(曾为 3c13e43)[root@git-node1 demo]# git tag -l v*v1.0.0
1.4推送本地标签
如上操作都是基于打标签以及删除标签,下面我们来学习下打完标签后如何推送至远端服务器
也可以使用git push origin –-tags推送所有本地建立的tag包
[root@git-node1 demo]# git push origin v1.0.0Counting objects: 1, done.Writing objects: 100% (1/1), 167 bytes | 0 bytes/s, done.Total 1 (delta 0), reused 0 (delta 0)To git@git-node1:root/git_demo.git* [new tag] v1.0.0 -> v1.0.0
1.5获取远程标签
使用git pull获取最新tag包,可以使用git fetch强制获取
[root@git-node1 git_demo]# git pull origin v1.0.0sremote: Counting objects: 1, done.remote: Total 1 (delta 0), reused 0 (delta 0)Unpacking objects: 100% (1/1), done.来自 git-node1:root/git_demo* [新tag] v1.0.0 -> v1.0.0Already up-to-date.
1.6删除远程标签
通过push delete参数来删除远程标签
[root@git-node1 git_demo]# git push origin --delete tag v1.0.0To git@git-node1:root/git_demo.git- [deleted] v1.0.0
也可以先删除本地tag标签,然后推送空标签至于远程进行删除
[root@git-node1 git_demo]# git tag v1.0.1[root@git-node1 git_demo]# git push origin v1.0.1Total 0 (delta 0), reused 0 (delta 0)To git@git-node1:root/git_demo.git* [new tag] v1.0.1 -> v1.0.1//删除本地tag[root@git-node1 git_demo]# git tag -d v1.0.1已删除 tag 'v1.0.1'(曾为 9573413)//推送空tag至远程进行删除[root@git-node1 git_demo]# git push origin :refs/tags/v1.0.1To git@git-node1:root/git_demo.git- [deleted] v1.0.1
1.7Git标签小结
git版本号规则
内部版本 B1.1.0
外部版本 V1.1.0
补丁版本 P1.1.0
命令git tag –a <tagname> -m "message" //在当前commit状态新建一个tag命令git tag -l <tagname> //列出相对应版本号tag命令git push origin <tagname> //推送一个本地标签命令git push origin --tags //推送全部未推送过的本地标签命令git tag -d <tagname> //删除一个本地标签命令git push origin --delete tag <tagname> //删除一个远程标签命令git push origin :refs/tags/<tagname> //删除一个远程标签
Git系列六之标签管理的更多相关文章
- Git之(六)标签管理
发布一个版本时,我们通常先在版本库中打一个标签(tag),这样,就唯一确定了打标签时刻的版本.将来无论什么时候,取某个标签的版本,就是把那个打标签的时刻的历史版本取出来.所以,标签也是版本库的一个快照 ...
- Git学习总结(标签管理)
在Git中打标签非常简单,首先,切换到需要打标签的分支上: 然后,敲命令git tag <name>就可以打一个新标签: $ git tag v1. 可以用命令git tag查看所有标签: ...
- Git系列五之分支管理
1.Git分支管理 分支即是平行空间,假设你在为某个手机系统研发拍照功能,代码已经完成了80%,但如果将这不完整的代码直接提交到git仓库中,又有可能影响到其他人的工作,此时我们便可以在该软件的项目之 ...
- Git系列一之安装管理
1.Git安装部署 Git是分布式的版本控制系统,我们只要有了一个原始Git版本仓库,就可以让其他主机克隆走这个原始版本仓库,从而使得一个Git版本仓库可以被同时分布到不同的主机之上,并且每台主机的版 ...
- Git:六、分支管理(指针操作)
1.基本操作 1)创建分支 git branch <name> 2)切换分支 git checkout <name> 1)&2)创建并切换分支 git checkout ...
- 【Git】六、分支管理&冲突解决
上一节讲了如何和远端的仓库协同工作,这一节介绍一下分支 ---------------------------- 提要 //创建一个分支dev $ git branch dev //切换到dev分支 ...
- kafka系列六、java管理kafka Topic
package com.example.demo.topic; import kafka.admin.AdminUtils; import kafka.admin.RackAwareMode; imp ...
- Git复习(六)之标签管理
标签管理 发布一个版本时,我们通常先在版本库中打一个标签(tag),这样,就唯一确定了打标签时刻的版本.将来无论什么时候,取某个标签的版本,就是把那个打标签的时刻的历史版本取出来.所以,标签也是版本库 ...
- git的使用学习(六)git的标签管理
发布一个版本时,我们通常先在版本库中打一个标签(tag),这样,就唯一确定了打标签时刻的版本.将来无论什么时候,取某个标签的版本,就是把那个打标签的时刻的历史版本取出来.所以,标签也是版本库的一个快照 ...
随机推荐
- 【python】时间戳、字典列表排序
记录一下昨天学到的知识: 一.文件相关 文件追加:f = open("fname","a") 文件不存在时创建 二.时间戳相关 http://www.jb ...
- Nginx-请求处理与响应
void ngx_http_init_connection(ngx_connection_t *c) { ngx_uint_t i; ngx_event_t *rev; struct sockaddr ...
- BNU - 49102
进化之地(Evoland) Time Limit: 1000ms Case Time Limit: 1000ms Memory Limit: 65536KB 64-bit integer IO for ...
- Elasticsearch( 插件开发)
elasticsearch5.2.2 插件开发(一) Scripting plugins:这个插件本质来说,就是会调用用户的脚本,所以可以执行任何的程序,举例的话,可以通过这个插件,支持javascr ...
- 常用python shell
路径及文件操作 创建目录 os.mkdir(path_str) 列出当前文件夹中文件,存入string list中 os.listdir(path_str) 判断路径是否存在 os.path.exis ...
- javascript获取dom的下一个节点方法
需求说明: 获取当前节点左节点或者右节点(兄弟节点): css: <style type="text/css"> a:focus { outline: none; } ...
- 字符串匹配&Rabin-Karp算法讲解
问题描述: Rabin-Karp的预处理时间是O(m),匹配时间O( ( n - m + 1 ) m )既然与朴素算法的匹配时间一样,而且还多了一些预处理时间,那为什么我们还要学习这个算法呢?虽然Ra ...
- Single Number II(LintCode)
Single Number II Given 3*n + 1 numbers, every numbers occurs triple times except one, find it. Examp ...
- 判断数独是否合法(LintCode)
判断数独是否合法 请判定一个数独是否有效. 该数独可能只填充了部分数字,其中缺少的数字用. 表示. 样例 下列就是一个合法数独的样例. 注意 一个合法的数独(仅部分填充)并不一定是可解的.我们仅需使填 ...
- 洛谷——P1109 学生分组
P1109 学生分组 题目描述 有N组学生,给出初始时每组中的学生个数,再给出每组学生人数的上界R和下界L(L<=R),每次你可以在某组中选出一个学生把他安排到另外一组中,问最少要多少次才可以使 ...