[原文链接:Link] 转载请注明原作者
🧩 Git tag:区分 git commit 版本,与真实软件版本
在 git 系统中,每一个 commit 就是一次新的版本,版本都用 hash 来代表。
但真实开发环境下,每个软件从 v1.0.1 到 v 1.0.2 可能需要经历多次 commit 才会开发出来。
这就是软件版本与 commit 版本的区别。
而 tag,就是被用于给 commit 标上当前软件版本号的指令。
如:
- 在软件 v1.0.1 完成之时,给它发布前的最后一个 commit 标上
v1.0.1
tag (标签)。
此外,养成标 tag 的习惯可以让你更方便地进行版本回滚! (而不是每次都要用 git reflog 去翻找 hash)
🔖 tag 底层原理
本质:
tag 与 blob, tree, commit 类似,也是一个对象,
但仅封装了 commit 的 hash,外加一个名字。仅此而已。