美文网首页
Git笔记(八)创建标签,操作标签

Git笔记(八)创建标签,操作标签

作者: 红发_SHANKS | 来源:发表于2018-07-11 13:51 被阅读4次

本系列笔记整理自廖老师的 Git 教程
开发完成,发布一个版本时,我们通常先在版本库中打一个标签(tag),这样,就唯一确定了打标签时刻的版本。将来无论什么时候,取某个标签的版本,就是把那个打标签的时刻的历史版本取出来。所以,标签也是版本库的一个快照。

Git的标签虽然是版本库的快照,但其实它就是指向某个commit的指针(跟分支很像对不对?但是分支可以移动,标签不能移动),所以,创建和删除标签都是瞬间完成的。

Git有commit,为什么还要引入tag?
我们在日常开发中,为了尽量保证数据安全和板块逻辑清晰,会尽量按照小模块小功能来提交 commit ,这样,某两个版本中间,可能就会有很多的 commit,如果我们要查看某个版本,就相当的麻烦,tag 帮助我们清晰的定位了各个大的版本。

创建标签

使用 git tag tagVersion 可以快速方便的创建一个标签

$ git tag v1.0.0

使用 git tag 可以查看我们创建了哪些标签

$ git tag
v1.0.0

使用 git tag tagVersion commit_id对某个历史commit 打 tag 。

$ git log --pretty=oneline --abbrev-commit
b6e3d60 (HEAD -> master, tag: v1.0.0, origin/master, origin/HEAD, dev) 新功能开发完成,合并到 mater分支
cb75959 新功能开发完成
6a5ba4c bug修复后合并到 dev 分支
9a864d0 修复 bug 666
5e44f74 在 dev 分支开发进度进行到了 70%
d2d724d bug 出现
833b087 --no-f 分分支管理策略
bfd0415  新增分支管理策略文字
f830213 merge
34ed366 master
fe4a7e8 dev
d0398e5 commit dev
8cd7e8d  commit master
1895051 commit dev
a6de0c0 use ssh
0d5868b update description
f6c6e51 first commit
6a325a8 save changes
bab594b 提交修改
39b16df add new file and change README
daa5a4c 新增文件第二次(真)
fa5cb84 新增文件第二次
f2c92b3 add README

比如我们要对 新增分支管理策略文字 这个 commit 打上标签,那么通过上面的 log 获取到 commit_id 以后,直接使用 git tag tagVersion commit_id即可。

$ git tag v0.0.5 bfd0415
$ git tag
v0.0.5
v1.0.0

注意:标签总是和某个commit挂钩。如果这个commit既出现在master分支,又出现在dev分支,那么在这两个分支上都可以看到这个标签。

操作标签

如果标签打错了,没有推送到远程仓库的话,直接在本地删除即可: git tag -d <tagVersion>

$ git tag -d v0.0.5
Deleted tag 'v0.0.5' (was bfd0415)

因为创建的标签都只存储在本地,不会自动推送到远程。如果要推送某个标签到远程,使用命令git push origin <tagname>

$ git push origin v1.0.0
Total 0 (delta 0), reused 0 (delta 0)
To github.com:chen2tu/GitLearn.git
 * [new tag]         v1.0.0 -> v1.0.0

或者,一次性推送全部尚未推送到远程的本地标签:git push origin --tags

如果标签已经推送到远程,要删除远程标签就麻烦一点,先从本地删除 git tag -d <tagVersion>,然后,从远程删除。删除命令也是push,但是格式为 git push origin :refs/tags/tagVersion,注意 refs 前面的冒号

$ git tag -d v1.0.0
Deleted tag 'v1.0.0' (was b6e3d60)
$ git push origin :refs/tags/v1.0.0
To github.com:chen2tu/GitLearn.git
 - [deleted]         v1.0.0

总结
命令 git push origin <tagname>可以推送一个本地标签;

命令git push origin --tags可以推送全部未推送过的本地标签;

命令git tag -d <tagname>可以删除一个本地标签;

命令git push origin :refs/tags/<tagname>可以删除一个远程标签。

感想
Git 的八篇笔记终于完成了,感谢廖老师提供的通俗易懂的教程,以前就会 pull,push。对于分支,冲突,标签,策略等概念感到恐惧,整个教程学习下来,明白了 Git 工作的原理,发现一切不是那么难。最重要的一点,还是要上手练习,抛开每天用的各种图形化工具,一个命令行一个命令行的敲下来,看看每条命令行有什么效果。
慢慢来,比较快,脚踏实地,水滴石穿。技能树又点亮了一颗。虽然整个笔记过程没有涉及到各种黑科技,但是日常工作,完全够用了。感恩每一个前辈无私的提供的教程。

相关文章

  • Git笔记(八)创建标签,操作标签

    本系列笔记整理自廖老师的 Git 教程开发完成,发布一个版本时,我们通常先在版本库中打一个标签(tag),这样,就...

  • git操作命令

    #分支操作 #暂存操作 回退操作 标签操作 其它操作 常规操作 git创建项目仓库

  • git标签操作

    1,git 创建标签(创建的是本地标签)并推送到远端 注意在创建前尽量执行 然后执行创建操作 推送到远端的操作 2...

  • GIT实操手册 —— Git Tag是时间的里程碑

    目录 为什么有必要使用Git Tag? git tag的基本操作 git tag的分类轻量级标签创建带有说明的标签...

  • GitLab 打tag

    查看标签 git tag 创建标签 git tag 标签名字 -m '消息内容' 推送标签 git push or...

  • Git 标签管理

    Git 可以非常方便的创建和管理标签。 创建标签 删除标签 查看标签 筛选标签 查看标签 推送标签 检出标签 这个...

  • git tag使用

    查看标签 git tag 创建标签 git tag 标签名字 -m '消息内容'git tag -a crm-1....

  • 标签(Tag)

    创建标签 git tag tagname 查看所有标签 git tag 默认的标签是打在最新的commit i...

  • Git 标签管理

    标签管理 创建标签 在Git中打标签需要先切换到需要打标签的分支上: 然后,敲命令 git tag ...

  • GIt命令行

    一、Tag git tag 打印所有标签 git tag v1.0 -light 创建轻量级标签 git tag ...

网友评论

      本文标题:Git笔记(八)创建标签,操作标签

      本文链接:https://www.haomeiwen.com/subject/uudhpftx.html