晚上review了下grunt-inline的issues,看到有个兄弟pull request,修正了0.3.0版本的一个bug。于是就merge了下,然后发布了0.3.1版本(这里)。

npm publish后,突然想到一个问题,发布了这么多个版本了,但好像都没有打过tag,这个不利于版本回溯以及bug trace。svn版本管理里有tag的概念,git里八九不离十也有,虽然还没用过。就简单百度了下,打完tag后顺便做下笔记:

查看tag

git tag

比如我在grunt-inline的项目下运行这个命令,输出如下

casperchenMacBookPro:grunt-inline casperchen$ git tag
0.3.0
0.3.1
v0.3.0

添加tag

tag分为两种,分别是轻量级(lighted)tag和附注(annotated)标签。我们通常采用后面这一种。

1. 根据最新版本创建tag

比如merge了PR后,想要给最新的版本0.3.1打个tag,可用如下命令

 git tag -a v0.3.1 -m '版本0.3.1的tag'

几个参数简单解释下

-a annotated的意思,标识tag的类型
v0.3.1 tag版本
-m 注释信息

2. 根据特定版本创建tag

有的时候,我们想要给历史版本打tag。比如给grunt-inline打完0.3.1的tag后,我想顺道给之前的0.3.0版本打个tag。该怎么做呢。

首先需要知道该提交版本的校验和,可以通过git log获得。比如我们运行git log后,输出如下信息

commit 96770ddb62efc6ac58d4c71da0f346867f1e24de
Author: chyingp <chyingp@gmail.com>
Date: Sun Jun 15 21:25:36 2014 +0800 update README and package.json after merge a PR

然后,可以针对该次提交打tag

git tag -a v0.3.0 96770ddb62efc6ac58d4c71da0f346867f1e24de -m '版本0.3.0的tag'

删除tag

命令很简单,加上-d参数即可

git tag -d v0.3.1

发布tag

默认情况下,git push的时候,不会把本地打的tag也提交到git hub,需要手动推送。

1. 发布所有tag

git push origin –tags

2. 发布特定tag

it push origin v0.3.1

git笔记:通过给grunt-inline打tag看tag操作的更多相关文章

  1. Git 笔记三 Git的初步使用

    Git 笔记三 Git的初步使用 在上一篇中,学习了如何配置Git环境,这一篇,开始学习Git的初步使用.Git的初步使用还是很简单的.总体上知道git init, git clone, git ad ...

  2. Git 笔记二-Git安装与初始配置

    git 笔记二-Git安装与初始配置 Git的安装 由于我日常生活和工作基本上都是在Windows上,因此此处只说windows上的安装.Windows上的安装和其他程序一样,只需要到http://g ...

  3. Git 笔记一 Git简介

    git 笔记一 什么是版本控制 所谓版本控制就是记录对文件的修改记录,这样以后就能回退到需要的 版本.比如你对一段代码进行了几次修改,有几次修改不想要了,如果 使用了版本控制,就可以回退到未做这些修改 ...

  4. git 创建tag , 查看tag , 删除tag

    简介  用git了很久了,也喜欢这个版本控制工具,今天来分享下,怎么用命令创建tag,查看tag,删除tag和把本地tag推到远程git服务器上 C:\Users\\WandaPuHuiProject ...

  5. 廖雪峰git笔记

    查看本地机子的在Git上的名字和邮箱:git config user.namegit config user.email 对所有仓库指定相同的用户名和Email地址:git config --glob ...

  6. 项目管理---git----快速使用git笔记(七)------coding.net项目管理多人操作的流程规范--合并代码审核

    我们在前面已经介绍了coding.net和本地git的基本用法. 但是多人协作开发时情况会复杂得多,所以我们最好有一些规范来保证项目多人开发顺利进行. 比如说 规范一 master代码分支  需要开启 ...

  7. 项目管理---git----快速使用git笔记(五)------本地项目代码提交到远程仓库---新建项目

    上一篇我们已经知道了怎么从远程仓库获取项目文件代码. 项目管理---git----快速使用git笔记(四)------远程项目代码的首次获取 git还有一种使用场景是 我本来在电脑里就有一个项目,现在 ...

  8. 项目管理---git----快速使用git笔记(四)------远程项目代码的首次获取

    使用git最常见的场景是 你需要参与到一个项目中,而这个项目的代码,同事已经上传到github或者https://coding.net了. 这时候他会给你一个项目代码的远程仓库链接. 例如: http ...

  9. 项目管理---git----快速使用git笔记(一)------git的简单介绍

    最近svn代码管理服务器崩溃了,切换到git来运作. 经过几天的使用,感觉很不错. 尤其是代码合并到正式版本之前 可以对代码进行 code review. 这样能很好的保证团队的代码质量和一些重复代码 ...

随机推荐

  1. Sql Server中的游标最好只用于有主键或唯一键的表

    游标cursor,我想大多数人都在sql server里面用过.当一个表数据量不太大的时候,游标还是可以用的,毕竟游标是循环一个表中每一行数据的最简便办法.但是如果你用一个游标去循环一个没有主键或唯一 ...

  2. php notes

    1. foreach中的引用 <?php $arr = array(1, 2, 3, 4); foreach ($arr as &$value) { $value = $value * ...

  3. MySQL优化之Explain命令解读,optimizer_trace

    简述: explain为mysql提供语句的执行计划信息.可以应用在select.delete.insert.update和place语句上.explain的执行计划,只是作为语句执行过程的一个参考, ...

  4. StringBuffer&StringBuilder类

    0. 说明 1. 总体说明 当对字符串进行修改的时候,需要使用 StringBuffer 和 StringBuilder 类. 和 String 类不同的是,StringBuffer 和 String ...

  5. Windows:服务已经标记为删除

    解决办法: 方法一:运行删除服务项命令的时候,服务管理窗口未关闭,关闭服务管理窗口即可: 方法二:删除服务的注册表项,路径为: HKEY_LOCAL_MACHINE\SYSTEM\CurrentCon ...

  6. TiDB数据库 mydumper命令导出数据报错:(mydumper:1908): CRITICAL **: Couldn't acquire global lock, snapshots will not be consistent: Access denied for user 'super'@'%' (using password: YES)

    今天想使用Tidb官方提供的mydumper来备份AWS上的RDS集群中mysql数据库的某个表,发现报错了 [tidb@:xxx /usr/local/tidb-tools]$ -t -F -B x ...

  7. 复合梯形公式、复合辛普森公式 matlab

    1. 用1阶至4阶Newton-Cotes公式计算积分 程序: function I = NewtonCotes(f,a,b,type) % syms t; t=findsym(sym(f)); I= ...

  8. spark任务调度和资源分配

    Spark调度模式 FIFO和FAIR     Spark中的调度模式主要有两种:FIFO和FAIR.    默认情况下Spark的调度模式是FIFO(先进先出),谁先提交谁先执行,后面的任务需要等待 ...

  9. eclipse 汉化详细方法

    1.首先确认自己的 eclipse 是哪个版本,这个很关键,涉及到后面要用到的语言包需要与版本匹配,启动 eclipse,观察对应的版本号,比如我用的是 Photon 版本 2.参照官方给的方法进行下 ...

  10. 死磕nginx系列--使用upsync模块实现负载均衡

    问题描述 nginx reload是有一定损耗的,如果你使用的是长连接的话,那么当reload nginx时长连接所有的worker进程会进行优雅退出,并当该worker进程上的所有连接都释放时,进程 ...