tag: 在Git中,标签是一种轻量级的指针,它指向某个特定的提交。与分支不同的是,标签通常用于标记重要的提交,如发布版本。标签是静态的,一旦指向某个提交,通常不会再改变。
branch: 分支是动态的,分支的内容可以修改。
关系
branch就是一直增长的commits树。tag对应一次commit。类比,branch是绳,commits是结绳记事中的绳结,而tag是对特绳结赋名方便记忆的。
tag简单命令
新建标签
1.创建轻量级标签
git tag <tag_name> [<commit_hash>]
<tag_name>(必须):指定创建的标签名称。
<commit_hash>(可选):指定为某次提交创建标签,不指定则默认为最近一次提交。
2.创建附注标签
git tag -a <tag_name> -m "<tag_message>" [<commit_hash>]
<tag_name>(必须):指定创建的标签名称。
"<tag_message>"(必须):指定附注标签的消息。
<commit_hash>(可选):指定为某次提交创建标签,不指定则默认为最近一次提交。
删除标签
1.删除本地仓库标签
git tag -d <tag_name>
<tag_name>(必须):指定需要删除的标签名称。
2.删除远程仓库标签
git push <remote_repo> --delete <tag_name>
<remote_repo>(必须):指定远程仓库,一般为origin。
<tag_name>(必须):指定需要删除的标签名称。
推送标签
git push <remote_repo> <tag_name>
<remote_repo>(必须):指定远程仓库,一般为origin。
<tag_name>(必须):指定需要同步到远程仓库的标签名称。
切换标签
git checkout <tag_name>
<tag_name>(必须):指定需要同步到远程仓库的标签名称。