Git可以给历史中的某一个提交打上标签,以示重要。它很像一个不会改变的分支——只是一个特定提交的引用。比较有代表性的是人们会使用这个功能来标记发布结点(v1.0.0等)。使用命令git tag
,可以查看所有标签。如果要定义标签,只需要在git tag
后添加要定义的标签名。例如:git tag v1.0.0
。
默认情况下,git push
命令并不会传送标签到远程仓库服务器上。在创建完标签后,你必须显示地推送标签到共享服务器上。
$ git tag v1.0.0
$ git push origin v1.0.0
Total 0 (delta 0), reused 0 (delta 0)
To github.com:benben/testBranch.git
* [new tag] v1.0.0 -> v1.0.0
在标签创建完成后,你在上线之前又做过多次修改。这时你可以检出你之前那个准备发布的版本(打标签的版本)进行部署。
Git中不能真的检出一个标签,因为他们并不能像分支一样来回移动。如果想要工作目录与仓库中特定地标签版本完全一致,可以使用git checkout -b [分支名] [标签名]
在特定地标签上创建一个新分支。例如:
$ git checkout -b version1 v1.0.0
Switched to a new branch 'version1'