Git之拉取指定tag版本/切换指定tag代码

前言

工作过程中,软件需要发布新版本,要求在git分支上打上tag,方便以后维护该版本软件程序。

一、tag命令简介

tag是git版本库的一个标记命令,指向了某个commit的指针,tag命令主要用于发布版本管理,当一个版本发布时,打赏tag标签。
可以把tag想象成一个保存的位置或标记,方便后面对该版本进行追踪和管理。

二、使用步骤

1.查询tag列表

#    git tag //显示默认列表
#    git tag -l
#    git tag -n //显示tag列表,并显示描述信息
#    git ls-remote --tags origin //查看远程所有tag

2.查看某个tag信息

#    git show v1.0.0 //v1.0.0为tag名称

3.创建tag

进入当前分支。用以下命令就可给当前分支打上tag

#    git tag v2.0
#    git tag -a v2.0 -m '注释信息' //-m 后跟的是注释信息, 当使用git show v2.0的时候, 会显示这个注释信息

注意:这里需要注意的是如果打的tag不是当前分支的,可用git checkout 分支名 切换到自己想要切换到的分支。然后再进行打标签

然后再使用命令git push origin v2.0就可以将此tag推到远程仓库上


4.给指定的commit打标签

#	 git log --pretty=oneline //查看当前分支上历史提交记录,其中会记录commit id
#    git tag -a "指定标签名" commitID


5.推送tag

#    git push origin [tagname] //推送到远程仓库
#    git push origin --tags //推送所有tag到远程仓库


6.删除tag

#    git tag -d [tagname] //删除tagname,该命令结合git tag获取tagname
#    git push origin --delete  //方式二:远程tag的删除


7.检出tag

  • git clone 指定的tag
git clone --branch [tag] [git地址]
  • 已有仓库切换 tag
#    git checkout [tagname] //切换到指定的tag


8.重命名tag

//1.强制替换,再删除原有
#    git tag -f  
#    git tag -d 
//2.删除原有tag,重新添加
#    git tag -d 
#    git tag -a  -m"information"

总结

tag是对历史提交的一个id的引用,如果理解这句话就明白了tag的含义

使用git checkout tag即可切换到指定tag,例如:git checkout v0.1.0

切换到tag历史记录 会使当前指针处在分离头指针状态,这个时候的修改是很危险的,在切换回主线时如果没有合并,之前的修改提交基本都会丢失,如果需要修改可以尝试git checkout -b branch tag创建一个基于指定tag的分支,例如:git checkout -b test v0.1.0 这个时候就在这个test分支上进行开发,之后可以切换到主线合并。

注意这时候的test分支的代码很多都是tag版本处的,但是test分支head节点在最前面,这时候切换到主线进行合并,要注意合并后的代码冲突问题,不要让旧代码覆盖了主线的新代码。

git checkout -B
这个命令,可以强制创建新的分支,为什么加-B呢?如果当前仓库中,已经存在一个跟你新建分支同名的分支,那么使用普通的git checkout -b 这个命令,是会报错的,且同名分支无法创建。如果使用-B参数,那么就可以强制创建新的分支,并会覆盖掉原来的分支。

git checkout -B test v0.1.0 强制创建一个基于指定的tag的分支。

以上就是整理的git tag命令的使用方法。

参考文章:

git拉取指定tag的代码_Git应用详解第八讲:Git标签、别名与Git gc_weixin_39642619的博客-CSDN博客

你可能感兴趣的:(git,git,git,tag)