git笔记:通过给grunt-inline打tag看tag操作

简介:

晚上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

相关文章
|
20天前
|
开发工具 git
记IDEA Git版本回退并push到远程操作
记IDEA Git版本回退并push到远程操作
28 1
记IDEA Git版本回退并push到远程操作
|
28天前
|
开发工具 git 开发者
|
1月前
|
开发工具 git
web后端-IDEA的Git操作
web后端-IDEA的Git操作
|
2月前
|
Linux 网络安全 开发工具
Git拉取代码的完整示例操作
Git拉取代码的完整示例操作
63 0
|
3月前
|
Shell 开发工具 git
git相关操作
git相关操作
|
4月前
|
前端开发 开发工具 git
Git 标签(Tag)实战:打标签和删除标签的步骤指南
Git 标签(Tag)实战:打标签和删除标签的步骤指南
|
4月前
|
开发工具 git
Git操作远程仓库及解决合并冲突
Git操作远程仓库及解决合并冲突
64 0
|
2天前
|
Linux 开发工具 git
还不会 Git 子模块操作?一文教你学会 git submodule 的增、删、改、查!
还不会 Git 子模块操作?一文教你学会 git submodule 的增、删、改、查!
|
30天前
|
开发工具 git
|
1月前
|
存储 持续交付 开发工具
Git操作入门
Git是一个的开源分布式版本控制系统,它已经被广泛应用于软件开发、文档管理、代码托管等领域,成为当今最流行的版本控制系统之一。Git通过高效地管理文件的变化,使得团队协作更加高效,错误率更低。本文将介绍Git的工作原理、基本命令和常见用法等内容。
Git操作入门