参考博文:廖雪峰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. YARN集群的mapreduce测试(三)

    将user表.group表.order表关:(类似于多表关联查询) 测试准备: 首先同步时间,然后 开启hdfs集群,开启yarn集群:在本地"/home/hadoop/test/" ...

  2. IntelliJ IDEA快捷键与使用小技巧

    IntelliJ Idea 常用快捷键列表 修改方法如下: 点击 文件菜单(File) –> 点击 设置(Settings… Ctrl+Alt+S), –> 打开设置对话框. 在左侧的导航 ...

  3. JavaScript数组入门。

    JavaScript中的array对象就是数组,首先是一个动态数组,而且是一个像c#中 数组 arraylist hashtable等的综合体. var arr = [1, 7, 3, 4, 5];  ...

  4. 【转载】 C#中全角转半角以及半角转全角

    半角指的是一个字符占用一个标准字符的位置.全角指一个字符占用两个标准字符位置的状态.在C#中,我们可以通过程序的方法,将相应的半角字符串信息转换为全角类型,也可以实现全角转半角功能. 相应封装好的方法 ...

  5. ASP.NET MVC 使用Jquery异步操作JS代码

    $(function () { var ajaxFormSubmit = function () { var $form = $(this); var options = { url: $form.a ...

  6. js实现本地图片文件拖拽效果

    如何拖拽图片到指定位置,具体方法如下 在从本地上传图片的时候,如果使用拖拽效果,想想应该是更加的高大上,下面直接上js代码 完整代码: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 ...

  7. JavaScript碎片—函数闭包(模拟面向对象)

    经过这几天的博客浏览,让我见识大涨,其中有一篇让我感触犹深,JavaScript语言本身是没有面向对象的,但是那些大神们却深深的模拟出来了面向对象,让我震撼不已.本篇博客就是在此基础上加上自己的认知, ...

  8. 51nod1238 最小公倍数之和 V3(莫比乌斯反演)

    题意 题目链接 Sol 不想打公式了,最后就是求一个 \(\sum_{i=1}^n ig(\frac{N}{i})\) \(g(i) = \sum_{i=1}^n \phi(i) i^2\) 拉个\( ...

  9. Mac上Homebrew的安装

    Mac系统版本: 10.14.2 下载brew_install 访问:https://raw.githubusercontent.com/Homebrew/install/master/install ...

  10. Visualization of Detail Point Set by Local Algebraic Sphere Fitting

    Refers to Dynamic Sampling and Rendering of Algebraic Point Set Surfaces Growing Least Squares for t ...