参考博文:廖雪峰Git教程

1. 创建标签

切换到需要打标签的分支上,之后打标签

 [root@mini05 zhangtest]# git branch
dev
* master
[root@mini05 zhangtest]# git tag v1.

查看所有标签

 [root@mini05 zhangtest]# git tag
v1.

默认标签是打在最新提交的commit上的。有时候,如果忘了打标签,比如,现在已经是周五了,但应该在周一打的标签没有打,怎么办?

方法是找到历史提交的commit id,然后打上就可以了:

 [root@mini05 zhangtest]# git log --pretty=oneline --abbrev-commit
31230a8 feature2
56c6e0c conflict fixed
41de15c ma commit
75b1490 RE new line
068d030 add test.info
c752e64 add info
3b7db1c add aaa.txt
c795cfc del aaa.txt
6d0226b add aaa.txt
b293c46 git tracks changes
53f0f2e understand how stage works
65a58f2 add info
d4fb57e Update README.md
e730676 Initial commit

比方说要对add info这次提交打标签,它对应的commit id是65a58f2,敲入命令:

 [root@mini05 zhangtest]# git tag v0. 65a58f2
[root@mini05 zhangtest]# git tag
v0.
v1.

注意,标签不是按时间顺序列出,而是按字母排序的。可以用git show <tagname>查看标签信息:

 [root@mini05 zhangtest]# git show v0.
commit 65a58f2661c4d73dc0dc9c2e5bff4c350c42c98e
Author: Zhang San <zhanglianghhh@.com>
Date: Mon Sep :: + add info
………………

还可以创建带有说明的标签,用-a指定标签名,-m指定说明文字:

 [root@mini05 zhangtest]# git tag -a v0. -m "version 0.1 released" d4fb57e  # 推荐使用
[root@mini05 zhangtest]# git show v0.
tag v0.
Tagger: Zhang San <zhanglianghhh@.com>
Date: Mon Oct :: + version 0.1 released commit d4fb57e8a892060db07fe862058a1a8477be49aa
Author: 张亮 <zhanglianghhh@.com>
Date: Mon Sep :: + Update README.md
………………

2. 操作标签

如何删除标签

 [root@mini05 zhangtest]# git tag
v0.
v0.
v1.
[root@mini05 zhangtest]# git tag -d v0.
Deleted tag 'v0.1' (was 5757f83)

因为创建的标签都只存储在本地,不会自动推送到远程。所以,打错的标签可以在本地安全删除。

如果要推送某个标签到远程,使用命令git push origin <tagname>

 [root@mini05 zhangtest]# git push origin v1.  # 推送指定标签
Total (delta ), reused (delta )
To git@github.com:zhanglianghhh/zhangtest.git
* [new tag] v1. -> v1.

或者,一次性推送全部尚未推送到远程的本地标签:

 [root@mini05 zhangtest]# git push origin --tags  # 全部推送
Total (delta ), reused (delta )
To git@github.com:zhanglianghhh/zhangtest.git
* [new tag] v0. -> v0.

2.1. 删除远程标签

如果标签已经推送到远程,要删除远程标签就麻烦一点,先从本地删除:

 [root@mini05 zhangtest]# git tag -d v0.
Deleted tag 'v0.9' (was 65a58f2)

然后,从远程删除。删除命令也是push,但是格式如下:

 [root@mini05 zhangtest]# git push origin :refs/tags/v0.
To git@github.com:zhanglianghhh/zhangtest.git
- [deleted] v0.

  要看看是否真的从远程库删除了标签,可以登陆GitHub查看。

GitHub-标签管理的更多相关文章

  1. GitHub笔记(四)——标签管理

    五 标签管理 1 打标签.默认master $ git tag v1.0 要对add merge这次提交打标签,它对应的commit id是f52c633,敲入命令: $ git tag v0.9 f ...

  2. Laravel大型项目系列教程(五)之文章和标签管理

    一.前言 本节教程将大概完成文章和标签管理以及标签关联. 二.Let's go 1.文章管理 首先创建管理后台文章列表视图: $ php artisan generate:view admin.art ...

  3. 在GitHub上管理项目

    在GitHub上管理项目 新建repository 本地目录下,在命令行里新建一个代码仓库(repository) 里面只有一个README.md 命令如下: touch README.md git ...

  4. 【学习总结】Git学习-参考廖雪峰老师教程七-标签管理

    学习总结之Git学习-总 目录: 一.Git简介 二.安装Git 三.创建版本库 四.时光机穿梭 五.远程仓库 六.分支管理 七.标签管理 八.使用GitHub 九.使用码云 十.自定义Git 期末总 ...

  5. Git 学习(七)标签管理

    Git 学习(七)标签管理 发布版本时,通常会先在版本库中打一个标签,这样,就唯一确定了打标签时刻的版本.取出某个标签的版本,就是把那个打标签的时刻的历史版本取出来.所以,标签也是版本库的一个快照. ...

  6. 【转载】在GitHub上管理项目

    在GitHub上管理项目 新建repository 本地目录下,在命令行里新建一个代码仓库(repository) 里面只有一个README.md 命令如下: touch README.md git ...

  7. git学习(7)标签管理

    git学习(7)标签管理 1. 建立标签 在发布版本时候,我们通常会在版本库中打一个标签,这样就唯一确定了打标签的版本,有点像个里程碑,这里会有一个指向某个commit的指针 打标签很简单,首先切换到 ...

  8. 版本控制git之五-标签管理 tags 标签 代码版本 如: v1.0

      版本控制git之五-标签管理 打标签 像其他版本控制系统(VCS)一样,Git 可以给历史中的某一个提交打上标签,以示重要. 比较有代表性的是人们会使用这个功能来标记发布结点(v1.0 等等). ...

  9. rtags——node.js+redis实现的标签管理模块

    引言在我们游览网页时,随处可见标签的身影: 进入个人微博主页,可以看到自己/他人的标签,微博系统会推送与你有相同标签的人 游览博文,大多数博文有标签标记,以说明文章主旨,方便搜索和查阅 网上购物,我们 ...

  10. Git复习(六)之标签管理

    标签管理 发布一个版本时,我们通常先在版本库中打一个标签(tag),这样,就唯一确定了打标签时刻的版本.将来无论什么时候,取某个标签的版本,就是把那个打标签的时刻的历史版本取出来.所以,标签也是版本库 ...

随机推荐

  1. RabbitMQ 消息中间件

    RabbitMQ 是使用 Erlang 语言开发的消息中间件, 其遵循了高级消息队列协议(Advanced Message Queuing Protocol, AMQP). 与 Kafka 等消息队列 ...

  2. advanced installer重新打包教程

    一.简介 本次利用Advanced Installer软件里的Repackager重封装工具进行测试制作MSI安装包,还开可以利用Advanced Installerr制作MSI安装包 原理为执行两次 ...

  3. SpringBoot系列——aop 面向切面

    前言 项目中我们经常会用到aop切面,比如日志记录:这里简单记录一下springboot是如何使用aop spring对aop的配置,来自springboot参考手册,Common applicati ...

  4. SpringBoot学习(八)-->SpringBoot之过滤器、监听器

    本文将直接使用@WebFilter和@WebListener的方式,完成一个Filter 和一个 Listener. 过滤器(Filter)和 监听器(Listener)的注册方法和 Servlet ...

  5. [转]Rancher 1.6 Docs

    本文转自:https://rancher.com/docs/rancher/v1.6/zh/quick-start-guide/ 快速安装指南 在本节中,我们将进行简单快速的Rancher安装,即在一 ...

  6. .NET Core 实践一:微服务架构的优点(转)

    微服务现在已经是各种互联网应用首选的云架构组件,无论是 BAT 还是 滴滴.美团 ,微服务都是重要的一环. 相对于微服务,传统应用架构有以下缺点: 1. 业务代码混杂,团队成员职责边界不清,团队协作体 ...

  7. Request method 'POST' not supported错误和解决方法

    在使用SpringBoot的时候,在html页面用form表单post提交数据的时候报错: Request method 'POST' not supported 错误解析: 我是用的前端页面是HTM ...

  8. laravel常见异常解决

    requested URL not found http://stackoverflow.com/questions/21458080/the-requested-url-projectname-us ...

  9. #WEB安全基础 : HTML/CSS | 0x2初识a标签

    教你点厉害玩意,尝尝HTML的厉害! 我为了这节课写了一些东西,你来看看

  10. CentOS7 离线安装MySQL

    1.删除原有的mariadb 不然安装报错 rpm -qa|grep mariadb rpm -e --nodeps mariadb-libs 2. 下载RPM安装包 在https://dev.mys ...