git tag的用法详解

目录

一、tag标识一个commit

二、查看tag

三、对分支打tag

四、删除tag

五、根据某个tag来clone


一、tag标识一个commit

tag是用于去标记一个特定的commit。通常,在进行编译部署之前,我们需要对某一个即将release的版本进行tag,例如tag为release-v1.0。

tag基于某个commit来进行特定标识,生成一个带tag的类似branch,我们可以基于这个tag去生成新的分支,也可以根据tag切换到某个分支版本上,例如:

//生成新的branch,用tags/....去找tag
$ git checkout tags/ -b 
//比较:基于远程branch生成新分支,此语句直接可以将新分支进行set-upstream
$ git checkout origin/ -b 

//切换commit
$ git checkout tags/version 1.0

不过上述基于tag来checkout的前提,是要保证本地仓库中你有tags 的信息,所以要先fetch这些tags才能做出上述checkout指令,否则报错!!

// --all will fetch all the remotes.
// --tags will fetch all tags as well
$ git fetch --all --tags --prune

二、查看tag

  • 查看全部tags:

git tag
  • 查看以某格式匹配到tag内容的所有tags
git tag --list 'v-*'

三、对分支打tag

打tag分为两种方式,一种是直接打tag,打一个简单的标签

git tag v1.0

一个是打带注释的tag(annotated tags),此时后面可以通过 -m ,像提交commit一样备注你的评论以及其他信息

git tag -a v1.0 -m "Product Release"

在本地完成tag标记后,需要push到远程

  •  将所有tags push到远程
git push --tags
  •  将所有annotated tags和相关commit推上去
git push --follow-tags
  • 将特定tag推上去
git push origin 

如果是想更新远程的tag,用--force

git push origin   --force

四、删除tag

  • 删除本地tag
git tag -d 
  • 删除远程tag【通过push更新】
//注意要标明 origin
git push --delete origin 

五、根据某个tag来clone

git clone  --branch=

你可能感兴趣的:(工程化,git)