首页 > 代码库 > Git 系列之tag的用法---为你的代码标记版本号

Git 系列之tag的用法---为你的代码标记版本号

 

目录(?)[-]

  1. 本地仓库操作
  2. 远程仓库操作
  3. 其他 tag 操作
 

在做app开发的时候经常有版本的概念,比如v1.0、v1.1之类的,不同的版本肯定对应不同的代码,所以我一般要给我们的代码加上标签,这样假设v1.1版本出了一个新bug,但是又不晓得v1.0是不是有这个bug,有了标签就可以顺利切换到v1.0的代码,重新打个包测试了。

本地仓库操作:

1:打 tag 标签

Git tag -a v1.0 -m “commit version 1.0

加上 -f 覆盖原有的tag 
git tag -f v1.0

2:push 到远程仓库

  • push所有tag到远程仓库:git push origin –tags (注意tags前是两个短横杠)
  • push单个tag到远程仓库:git push origin [tagname]

3:删除 tag 便签

git tag -d v1.0

4:查看 tag 标签

git tag

5:切换标签

git checkout v1.0


远程仓库操作:

1:从远程仓库上删除 tag 
git push origin :v1.0

git push origin :refs/tags/[tagname]

git push origin –delete [tagname]

三种方法尽量都有尝试一下。


注意事项: 
尽量不要tag名字和分支名字一样,比较麻烦。 
如果tag名字和分支名字一样的时候,push需要指定refs的详细路径,因为分支和tag在git内部是这样表示的(只是引用),tag只存储所指向的那一次提交:

refs/tags/{tagnane} refs/heads/branches/{branchnane}

所以要这样push相同名字的tag和分支: 
git push origin refs/tags/product 
git push origin refs/heads/branches/product

把所有的tag都push到服务器上: 
git push origin –tags


其他 tag 操作:

轻量级标签 
轻量级标签实际上就是存在一个文件中的提交校验和–没有附加任何其他信息。创建轻量级标签的方法就是把上面’-a’,’-s’,’-m’这些选项都去掉。

git tag v1.0

如果现在对这个标签使用’git show’命令,不会看到像上面那种标签显示的那么多内容,仅仅显示这次提交的有关信息。

Git 系列之tag的用法---为你的代码标记版本号