Git 进阶指南
Search…
前言
概念
Git SSH Keys 配置
Git Alias Cheat Sheet
origin 与 upstream
Git Stash 与 gwip
Git Tag 与 Describe
Subtree 与 Submodule
Cherry Pick 的使用场景
常见问题
如何配置多个提交用户?
如何撤销修改?
遇到冲突了怎么解决?
如何配置 git merge tool?
fetch pull merge rebase 的关系
分支操作流示例
其他问题汇总
Powered By
GitBook
Git Tag 与 Describe
Git tag 常用于发布版本的标注,可以理解为 tag 是对某一次 commit hash 的别名设置。需要注意的是,git tag 的同步与删除,需要显式地指定其名称。
1、查看 tag 列表
# 列出所有本地 tag
git tag
# 过滤出 v2. 开头的 tag
git tag -l 'v2.*'
# 使用管道输出 tag 列表,避免进入 visual 模式
git tag | sort -V # gtv
2、新增 tag
Tag 包含两种,一种是轻量 tag,只设置别名,另外一种为附注 tag,能包含这个 tag 的作者和额外的备注信息。
# 创建一个名为 v0.0.1 的轻量 tag
git tag v0.0.1
# 创建一个名为 v1.0.0 的附注 tag
git tag -a v1.0.0 -m 'tag description'
# 将 tag 推送至远程
git push origin v1.0.0 # ggp v1.0.0
3、删除 tag
# 删除本地 tag
git tag -d v1.0.0
# 删除远程 tag
git push origin -d v1.0.0 # gp origin :v1.0.0
4、语义化版本与 git describe
清晰的 tag 版本信息,不但有助于发布版本的选择和回滚,同时能十分方便的查看到分支的版本提交进度。
git describe master --tags
假如以上命令输出为:v1.1.0-kaiye-gitbook-2-g51e992f
它表明,本地 master 分支当前 commit hash 为
51e992f
,距离上一次的 tag 版本
v1.1.0-kaiye-gitbook
之间已有
2
次提交。
如果需要知道本地与远程最近发布的一次 tag 版本是什么,直接运行
gdct
即可。
alias gdct='git describe --tags `git rev-list --tags --max-count=1`'
概念 - Previous
Git Stash 与 gwip
Next - 概念
Subtree 与 Submodule
Last modified
3yr ago
Copy link
Outline
1、查看 tag 列表
2、新增 tag
3、删除 tag
4、语义化版本与 git describe