我们常常在代码封板时,使用git 创建一个tag ,这样一个不可修改的历史代码版本就像被我们封存起来一样,不论是运维发布拉取,或者以后的代码版本管理,都是十分方便的

git的tag功能

git 下打标签其实有2种情况

  • 轻量级的:它其实是一个独立的分支,或者说是一个不可变的分支.指向特定提交对象的引用
  • 带附注的:实际上是存储在仓库中的一个独立对象,它有自身的校验和信息,包含着标签的名字,标签说明,标签本身也允许使用 GNU Privacy Guard (GPG) 来签署或验证,电子邮件地址和日期,一般我们都建议使用含附注型的标签,以便保留相关信息

所以我们推荐使用第二种标签形式

创建tag

git tag -a V1.2 -m 'release 1.2'

上面的命令我们成功创建了本地一个版本 V1.2 ,并且添加了附注信息 'release 1.2'

查看tag

git tag

要显示附注信息,我们需要用 show 指令来查看

git show V1.2

但是目前这个标签仅仅是提交到了本地git仓库.如何同步到远程代码库

git push origin --tags

如果刚刚同步上去,你缺发现一个致命bug ,需要重新打版本,现在还为时不晚.

git tag -d V1.2

到这一步我们只是删除了本地 V1.2的版本,可是线上V1.2的版本还是存在,如何办?这时我们可以推送的空的同名版本到线下,达到删除线上版本的目标:

git push origin :refs/tags/V1.2

如何获取远程版本?

git fetch origin tag V1.2

这样我们可以精准拉取指定的某一个版本.适用于运维同学部署指定版本.

git tag的用法的更多相关文章

  1. git tag的用法及意义

    git tag 介绍 命令是用来给当前项目状态(在某次commit后)打标签的,目的是便于以后将项目状态回滚到当时打标签的状态.可以把它与虚拟机的snapshot(快照)进行类比. 回想当时在看< ...

  2. 带GPG签名的Git tag

    原文地址http://airk000.github.io/git/2013/09/30/git-tag-with-gpg-key Git tag ###Tag用来做什么? Tag即标签,用以给项目仓储 ...

  3. git tag、gitignore和git撤销提交

    前言 最近在git的使用过程中遇到了一些新的问题,所以写下来方便自己回忆. git tag 打标签 git tag -a v1.00 -m "注释" git tag 打标签命令 - ...

  4. git tag用法

    git tag //查看tag git tag test_tag c809ddbf83939a89659e51dc2a5fe183af384233 //在某个commit 上打tag git tag. ...

  5. git tag 用法 功能作用

    前言 最近使用git管理一个项目, 当需要将稳定的代码发布成一个版本,git的标签操作刚好满足需求 用途 标签可以针对某一时间点的版本做标记,常用于版本发布,这恰恰是我所需要的功能,将本地标签推送到G ...

  6. Git 系列之tag的用法---为你的代码标记版本号

    版权声明:本文为博主原创文章,未经博主允许不得转载.   目录(?)[-] 本地仓库操作 远程仓库操作 其他 tag 操作   在做app开发的时候经常有版本的概念,比如v1.0.v1.1之类的,不同 ...

  7. git的基本用法——我的日常使用

    git的基本用法 一,前言 网上有太多关于git的用法说明,而我看得云里雾里,可能是本人比较愚笨.平常时间老问别人又觉得很不好意思,估计大多的同学们都是自己解决.后来我想到了买一本书,淘宝上git书籍 ...

  8. Git的一些用法

    三. Git的一些用法 1. .gitignore文件 屏蔽文件 : .gitignore文件是告诉Git哪些目录或者文件需要忽略, 这些文件将不被提交; 常用场景 : 写完代码后会执行变异调试等操作 ...

  9. git日常基本用法

    git作为项目管理现在已经是越来越广泛应用,结合自己平时的一些基本操作加上git说明文档里面的一些补充,我总结了一下git的基本用法: mkdir project # 创建项目目录 cd projec ...

随机推荐

  1. springboot 缓存架构

    线程内部缓存:a. 局部变量HashMap, 方法间传递  b. 使用ThreadLocal 本地缓存:单jvm内共享 可以使用(Concurrent)HashMap自己实现,也可以使用GuavaCa ...

  2. machine learning data sets

    http://archive.ics.uci.edu/ml/datasets.html 例如 3 分类 鸢尾花 数据集: http://archive.ics.uci.edu/ml/datasets/ ...

  3. C# 比较两个路径是否指向同一对象

    string path1 = @"c:\test\rootpath"; string path2 = @"C:\TEST\..\TEST\ROOTPATH"; ...

  4. cannot find package "context"

    导入  github.com/go-sql-driver/mysql 和 database/sql 时,报cannot find package "context"的错误因为go1 ...

  5. PythonStudy——Python 注释规范

    注释规范:   什么是注释?  注释:不会被python解释器解释执行,是提供给开发者阅读代码的提示 单行注释: # 开头的语句 多行注释:出现在文件最上方,用''' '''包裹的语句   Pycha ...

  6. Bootstrap Tooltip 显示换行

    <a class="pink" href="#" data-toggle="tooltip" data-placement=" ...

  7. kafka集群的错误处理--kafka一个节点挂了,导致消费失败

    今天由于kafka集群搭建时的配置不当,由于一台主消费者挂掉(服务器崩了,需要维修),导致了所有新版消费者(新版的offset存储在kafka)都无法拉取消息. 由于是线上问题,所以是绝对不能影响用户 ...

  8. Linux系统编程——信号

    目录 信号的介绍 信号的机制 信号的编号 Linux常规信号一览表 信号的产生 终端按键产生信号 硬件异常产生信号 kill函数/命令产生信号 信号的操作函数 信号集设定 sigprocmask函数 ...

  9. Centos7.5 安装高版本Cmake 3.6.2

    下载Cmake wget https://cmake.org/files/v3.6/cmake-3.6.2.tar.gz 解压Cmake tar xvf cmake-3.6.2.tar.gz & ...

  10. 调用免费的web service(天气预报)

    ”免费WebService”, 找到提供天气预报Webservice的网络地址 http://ws.webxml.com.cn/WebServices/WeatherWS.asmx?wsdl 在url ...