在项目开发的关键节点(版本发版,重大修改)等,我们需要使用标签来记录这些时间点,方便以后可以跟踪代码,在Git中创建标签非常简单。
创建查看标签
首先,切换到需要打标签的分支上,使用命令git tag <标签名>
git checkout master
Already on 'master'
Your branch is up to date with 'origin/master'.
git tag v1.0
使用 git tag
git tag
v1.0
正常情况下,Git会以当前HEAD指向的commit id 来创建标签,但是实际开发过程中,由于其他原因版本发布的时候,忘记创建标签,我可以在创建标签的时候,指定commit id,
git tag <标签名><commit id>
git tag v0.9 1952abd20e2cabac2dd766047edd7ed87669596b
git tag
v0.9
v1.0
注意 标签的顺序是按照字母的正序进行排列的,并不是按照创建时间。
创建标签的时候,我们还可以带上说明,用-a
指定标签名,-m
指定说明文字:
git tag -a v0.1 -m "version 0.1 release" 7e81682659ea5c6dea0045b3f086b229b4037547
如何查看标签的详情呢?可以用git show <标签名>
查看标签信息:
git show v0.9
commit 1952abd20e2cabac2dd766047edd7ed87669596b (tag: v0.9)
Author: longl <longl@vmware.com>
Date: Wed Mar 6 14:22:23 2019 +0800
master modify one line
diff --git a/readme.txt b/readme.txt
index 80580f2..04399ed 100644
--- a/readme.txt
+++ b/readme.txt
@@ -1,4 +1,4 @@
-Git is a distributed version control system
+Git is a distributed version control system master
Git is free software
new commit
test branch commit
标签推到远程仓库
如果要推送某个标签到远程仓库,使用命令git push origin <标签名>:
git push origin v1.0
Total 0 (delta 0), reused 0 (delta 0)
remote: Powered By 码云 Gitee — 开源中国 Git 代码托管平台
To 码云 Gitee — 开源中国 Git 代码托管平台:drag0n/gitlearning.git
* [new tag] v1.0 -> v1.0
如果要一次推送多个本地标签到远程仓库,执行以下命令:
git push origin --tags
Counting objects: 2, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (2/2), done.
Writing objects: 100% (2/2), 310 bytes | 310.00 KiB/s, done.
Total 2 (delta 0), reused 0 (delta 0)
remote: Powered By 码云 Gitee — 开源中国 Git 代码托管平台
To 码云 Gitee — 开源中国 Git 代码托管平台:drag0n/gitlearning.git
* [new tag] v0.1 -> v0.1
* [new tag] v0.2 -> v0.2
* [new tag] v0.9 -> v0.9
码云后台:
删除本地标签
如果标签打错了,那么该如何删除呢?git tag -d <标签名>
git tag -d v0.1
Deleted tag 'v0.1' (was d39d9ed)
删除远程标签
刚刚我们把v0.1从本地删除了,那么远程仓库上还有呢,如果我们想要把远程仓库的v0.1标签页删除掉,同样也需要用push 命令
git push origin :refs/tags/<标签名>
git push origin :refs/tags/v0.1
remote: Powered By 码云 Gitee — 开源中国 Git 代码托管平台
To 码云 Gitee — 开源中国 Git 代码托管平台:drag0n/gitlearning.git
- [deleted] v0.1
nice,标签的操作已经介绍完了~~