Git中的分支和标签有点类似,都是引用或者说指针。
关于Git引用可以参阅Git References一章节。
一.相似的地方:
图示如下:
heads和tags文件夹存储的是具体分支和标签:
tags文件也是同样的,这里就不截图演示了。
既然标签和分支都是引用,那么它们存储的内容也是类似的,都是指向一个commit对象的sha-1值。
代码实例如下:
$ cat .git/refs/heads/master
代码运行截图如下:
标签中的内容也是如此,这里不做演示。
二.最大的区别:
tag的位置是固定的,在给指定提交打好标签以后,它就固定于此位置。
分支的位置会不断变动的,随着分支的向前推移或者向后回滚,都在不断变化。