Git打標(biāo)簽從本地創(chuàng)建到遠(yuǎn)端推送的詳細(xì)流程
在軟件開(kāi)發(fā)中,Git標(biāo)簽(Tag)是為發(fā)布版本、標(biāo)記里程碑量身定制的“快照錨點(diǎn)”,它能永久記錄項(xiàng)目歷史中的關(guān)鍵節(jié)點(diǎn)。然而,僅創(chuàng)建本地標(biāo)簽往往不夠,如何將其高效地推送到遠(yuǎn)程倉(cāng)庫(kù)以實(shí)現(xiàn)團(tuán)隊(duì)共享,是許多開(kāi)發(fā)者會(huì)遇到的實(shí)際問(wèn)題。
一、標(biāo)簽的兩種“形態(tài)”
| 類型 | 本質(zhì) | 適合場(chǎng)景 | 命令示例 |
|---|---|---|---|
| 輕量標(biāo)簽 | 僅是一個(gè)指向提交的引用 | 臨時(shí)/本地標(biāo)記 | git tag v1.0.0 |
| 附注標(biāo)簽 | 獨(dú)立對(duì)象,含作者/日期/GPG 簽名 | 正式發(fā)版、開(kāi)源發(fā)布 | git tag -a v1.0.0 -m "Release v1.0.0" |
90% 的場(chǎng)景請(qǐng)用 附注標(biāo)簽,因?yàn)樗鼣y帶的元數(shù)據(jù)對(duì)版本追溯至關(guān)重要。
二、本地創(chuàng)建與查看
1. 打附注標(biāo)簽(推薦)
# 給當(dāng)前 HEAD 打標(biāo)簽 git tag -a v1.0.0 -m "Release version 1.0.0" # 給指定提交打標(biāo)簽 git tag -a v1.0.0 9fbc3d2 -m "Release v1.0.0"
2. 查看標(biāo)簽
git tag # 簡(jiǎn)潔列表 git show v1.0.0 # 查看標(biāo)簽詳情及對(duì)應(yīng)提交
輸出示例:
tag v1.0.0 Tagger: YourName <you@example.com> Date: Sun Sep 14 00:00:00 2025 +0800 Release version 1.0.0
三、推送標(biāo)簽到遠(yuǎn)端
默認(rèn) git push 不會(huì) 傳標(biāo)簽!必須顯式操作。
| 場(chǎng)景 | 命令 |
|---|---|
| 推送單個(gè)標(biāo)簽 | git push origin v1.0.0 |
| 一次性推送所有標(biāo)簽 | git push origin --tags |
| 推送時(shí)包含新分支及標(biāo)簽 | git push origin --follow-tags |
示例:
# 推送 v1.0.0 git push origin v1.0.0 # CI 自動(dòng)發(fā)版常用:只推送本次打的標(biāo)簽 git push origin --follow-tags
四、刪除標(biāo)簽(本地 & 遠(yuǎn)端)
| 位置 | 命令 |
|---|---|
| 本地 | git tag -d v1.0.0 |
| 遠(yuǎn)端 | git push origin --delete v1.0.0 或 git push origin :refs/tags/v1.0.0 |
一條龍刪除:
git tag -d v1.0.0 git push origin --delete v1.0.0
五、高頻問(wèn)題速查
1、推送時(shí)報(bào) “error: src refspec v1.0.0 matches more than one”
本地有同名分支,先刪除分支或顯式指定 refs/tags/v1.0.0。
2、CI 沒(méi)觸發(fā) Release 流程
確認(rèn)是否推了 附注標(biāo)簽 且 CI 監(jiān)聽(tīng)的是 tag 事件。
3、如何補(bǔ)打舊版本標(biāo)簽?
git log --oneline # 找到歷史提交 git tag -a v0.9.0 5f3d2e1 -m "Retroactively tag v0.9.0" git push origin v0.9.0
六、一張圖總結(jié)(保存即可)
本地創(chuàng)建 → 查看 → 推送 →(可選)刪除
│ │ │ │
▼ ▼ ▼ ▼
git tag -a git tag git push git tag -d
v1.0.0 v1.0.0 origin v1.0.0
v1.0.0 git push
--delete
到此這篇關(guān)于Git打標(biāo)簽從本地創(chuàng)建到遠(yuǎn)端推送的詳細(xì)流程的文章就介紹到這了,更多相關(guān)Git打標(biāo)簽流程內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
在VSCode中如何配置Python開(kāi)發(fā)環(huán)境
VScode是一個(gè)相當(dāng)優(yōu)秀的IDE,具備開(kāi)源、跨平臺(tái)、模塊化、插件豐富、啟動(dòng)時(shí)間快、顏值高、可高度定制等等優(yōu)秀的特質(zhì),所以用VScode來(lái)編寫Python,也是相當(dāng)?shù)暮糜玫?。所以,今天我們就?lái)講講,怎么在VScode上配置Python開(kāi)發(fā)環(huán)境。2020-01-01
git add -A 和 git add . 的區(qū)別詳解
這篇文章主要介紹了git add -A 和 git add . 的區(qū)別詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-07-07
IIS 301重定向與程序代碼實(shí)現(xiàn)301重定向的差別
過(guò)IIS做301重定向確可以實(shí)現(xiàn)傳遞網(wǎng)站的權(quán)重,還不會(huì)導(dǎo)致流量丟失。2010-11-11
快速設(shè)置IDEA代碼風(fēng)格為Google風(fēng)格
這篇文章主要介紹了快速設(shè)置IDEA代碼風(fēng)格為Google風(fēng)格,使用Google風(fēng)格format的圖文教程,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2020-11-11
vscode更改代碼git沒(méi)有更新問(wèn)題及解決
這篇文章主要介紹了vscode更改代碼git沒(méi)有更新問(wèn)題及解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2025-05-05
hexo博客開(kāi)啟https的SSL?證書實(shí)現(xiàn)過(guò)程
這篇文章主要為大家介紹了hexo?博客開(kāi)啟https的SSL證書實(shí)現(xiàn)過(guò)程詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-10-10
textarea 在IE和FF下?lián)Q行無(wú)法正常顯示的解決方法
今天在做項(xiàng)目時(shí)用到textarea 用戶輸入信息后顯示不換行在IE下測(cè)試成功在FF沒(méi)反應(yīng)2010-07-07

