首页 > 其他分享 >git-tag

git-tag

时间:2023-07-13 15:11:27浏览次数:40  
标签:git 标签 v1.0 tag push txt

1.tag简介

1-1.说明

tag 就是 对某次 commit 的一个标识,相当于起了一个别名

创建的标签会在.git/refs/tags

1-1-1.查看tags目录

ls .git/refs/tags
v1.0.0 v2.0.0

1-1-2.查看tags下的标签文件

cat .git/refs/tags/v1.0.0
f3d2540bdaf36e6b0092ccd0d3aa908c19f2f708

1-2.tag类型

  • 轻量标签
    • 只是某个commit 的引用,可以理解为是一个commit的别名
  • 附注标签
    • 是存储在git仓库中的一个完整对象,包含打标签者的名字、电子邮件地址、日期时间 以及其他的标签信息。它是可以被校验的,可以使用 GNU Privacy Guard (GPG) 签名并验证

2.本地tag

2-1.创建标签

2-1-1.创建轻量标签

# 在当前HEAD创建轻量标签
git tag <tag_name>

# 给指定commit创建轻量标签
git tag <tag_name> <commit>

2-1-2.创建附注标签

-a:表示注释标签

-m:填写注释信息

# 在当前HEAD创建附注标签
git tag -a <tag_name> -m <msg info>

# 给指定commit创建附注标签
git tag -a <tag_name> <commit> -m <msg info>

2-2.删除标签

删除指定标签

git tag -d <tag_name>

删除v1.0.1标签

git tag -d v1.0.1 
Deleted tag 'v1.0.1' (was 7bd8dad)

2-3.修改标签

本质是替换标签名

# 在旧的标签打一个新的标签
git tag <new_tag_name> <old_tag_name>
 
# 删除旧标签
git tag -d <old_tag_name>
 
# 删除远程分支的旧标签
git push origin -d <old_tag_name>

# 把新分支推送到远端
git push --tags

2-4.查看标签

2-4-1.查看所有/筛选标签

# 列出本地所有标签
git tag

# 列出本地<v1.1.>开头的标签
git tag -l "v1.1.*" ==  git tag --list "v1.1.*"

2-4-2.查看标签提交信息

git show <tag_name>

2-4-2-1.查看轻量标签

git tag v1.0.0
commit f3d2540bdaf36e6b0092ccd0d3aa908c19f2f708 (HEAD -> master, tag: v1.0.0)
Author: user-name <[email protected]>
Date:   Tue Jul 11 23:15:27 2023 +0800

    add b.txt

diff --git a/b.txt b/b.txt
new file mode 100644
index 0000000..e69de29

2-4-2-2.查看附注标签

git show v1.0.1
tag v1.0.1
Tagger: user-name <[email protected]>
Date:   Tue Jul 11 23:17:09 2023 +0800

这是一个补丁

commit 5fb188686e12f43aedb91d0a562c1d908b10ddc6 (HEAD -> master, tag: v1.0.1)
Author: user-name <[email protected]>
Date:   Tue Jul 11 23:16:31 2023 +0800

    update b.txt

diff --git a/b.txt b/b.txt
index e69de29..e0b3f1b 100644
--- a/b.txt
+++ b/b.txt
@@ -0,0 +1 @@
+bb

2-4-3.查看标签注释

轻量标签只会显示commit-msg,附注标签就会显示标签标注信息

git tag -n
v1.0.0          add b.txt
v1.0.1          add b.txt
v2.0.0          升级了

2-5.创建分支

2-5-1.根据指定的标签切换出新的分支

git switch -c <branch_name> <tag_name>

git chekout -b <branch_name> <tag_name>

2-5-1.根据指定的标签切换出游离分支

git switch -d <tag_name>

git chekout <tag_name>

3.远程tag

3-1.标签推送到远程

git push不会把标签推送到远程仓库,必须手动更新

remote_name指代git remote -v所显示的name,默认的是origin

3-1-1.推送单个标签

git push origin v1.0.0:把指定标签v1.0.0推送到远程仓库上

git push <remote_name> <tag_name>

3-1-2.推送多个标签

git push origin --tags: 将所有不在远程仓库上的标签更新到远程仓库上

git push <remote_name> --tags

3-2.删除远程标签

⚠️不要随意删除远程仓库上的标签

以下两种都是删除远程指定标签

3-2-1.方式一

git push <remote_name> -d <tag_name>

git push <remote_name> --delete <tag_name>

3-2-2.方式二

git push <remote_name> :regs/tags/<tag_name>

标签:git,标签,v1.0,tag,push,txt
From: https://www.cnblogs.com/lxd670/p/17546336.html

相关文章

  • git-worktree
    1.说明git-worktreegitworktree非常适合大型项目又需要维护多个分支,想要避免来回切换的情况优点gitworktree可以快速进行并行开发,同一个项目多个分支同时并行演进gitworktree的提交可以在同一个项目中共享gitworktree和单独clone项目相比,节省了硬盘空间,......
  • Git 基础入门
    Git基础入门一、安装与配置1.下载安装https://git-scm.com/download/ 2.使用入口win:右键菜单—gitbashmac:终端窗口 3.基础配置a.首次使用添加身份说明,使用以下两个命令:$gitconfig--globaluser.name"你的昵称"$gitconfig--globaluser.email邮箱 b.......
  • 常用gitignore
    #file.build.cmake-build-debug.idea#Prerequisites*.d#CompiledObjectfiles*.slo*.lo*.o*.obj#PrecompiledHeaders*.gch*.pch#CompiledDynamiclibraries*.so*.dylib*.dll#Fortranmodulefiles*.mod*.smod#CompiledStaticlibraries*.lai*.la*.a*.lib#......
  • 如何实现r语言做logit回归的具体操作步骤
    R语言做Logit回归Logit回归是一种常用的统计分析方法,可以用来研究二元分类问题。它可以对因变量的概率进行建模,并利用自变量的线性组合来预测分类结果。本文将介绍如何使用R语言进行Logit回归分析,并给出相应的代码示例。数据准备首先,我们需要准备用于Logit回归分析的数据。考虑......
  • Git备忘录
    环境:Windows安装Git下载地址:https://git-scm.com/download配置Git安装完成后需要配置,开始菜单打开“GitCMD”或右键打开“OpenGitBashhere”。配置用户名和提交用到的邮箱#配置用户名gitconfig--globaluser.name"xxx"#配置邮箱gitconfig--globaluser.email......
  • Git小白到老鸟的进阶之路
    小白:师兄,师兄,上次你教我的操作,我傻乎乎的执行了一遍,可是那个Git究竟是什么那?师兄:小白莫慌,Git就是一种版本控制,小白,你平时写论文,是不是也按日期保存成许多的版本那。小白:对呀,对呀。师兄:那开发项目的时候,每个人开发的部分都不一样,需要记录多个版本,这个就是我们伟大的Git做得。小白:师......
  • 常用git指令
    常用git指令一.gitpull相关将远程指定分支拉取到本地指定分支上gitpullorigin<远程分支名>:<本地分支名>将远程分支拉倒当前分支gitpullorigin<远程分支名>将与本地当前分支名相同的远程分支拉到本地当前分支(需要先关联远程分支)gitpull......
  • TechSmith Snagit mac最强大的屏幕截图软件
    TechSmithSnagitMac版是一款强大的屏幕截图软件,适用于Mac操作系统。它提供了多种截图工具和编辑功能,可以帮助用户轻松地创建高质量的截图和录屏视频。→→↓↓载TechSmithSnagitmac 以下是TechSmithSnagit的一些主要特点:多种截图方式:TechSmithSnagit支持多种截图方式......
  • GIT常用命令
    常用命令查看状态gitstatus拉取远程分支gitfetch/gitfetch—all拉取远程分支并同步本地分支gitfetchorigin拉取远程分支并与本地代码合并gitpull/gitpullorigin远程仓库强行覆盖本地gitfetchgitreset--hardorigin/gitpull本地上传远程仓库git......
  • TortoiseGit v2.60
    TortoiseGit在大年初二迎来了大版v2.60Released:2018-02-17ThisisplannedtobethelastversioncompatiblewithMsysGit1.9.5(i.e.,GitforWindows<1.9.5).==Features==*Fixedissue#3089:ShowparentSHA1oncherrypickingamergecommit*Fixedi......