git tag介紹


我們常常在代碼發版時,使用git 創建一個tag ,這樣一個不可修改的歷史代碼版本就像被我們封存起來一樣,不論是運維發布拉取,或者以后的代碼版本管理,都是十分方便的。

 

git的tag功能
git 下打標簽其實有2種情況

輕量級的:它其實是一個獨立的分支,或者說是一個不可變的分支.指向特定提交對象的引用
帶附注的:實際上是存儲在倉庫中的一個獨立對象,它有自身的校驗和信息,包含着標簽的名字,標簽說明,標簽本身也允許使用 GNU Privacy Guard (GPG) 來簽署或驗證,電子郵件地址和日期,一般我們都建議使用含附注型的標簽,以便保留相關信息
所以我們推薦使用第二種標簽形式

一、創建tag

創建本地標簽
1、創建輕量標簽
輕量標簽指向一個發行版的分支,其只是一個像某commit的引用,不存儲名稱時間戳及標簽說明等信息。定義方法如下

 git tag <版本號>-light

 

2、創建帶附注標簽
相對於輕量標簽,附注標簽是一個獨立的標簽對象,包含了名稱時間戳以及標簽備注等信息,同時指向對應的commit。定義方法如下

git tag -a <版本號> -m "<備注信息>"

 

3、

同時我們也可以像特定的commit添加標簽,使用該commit對應的SHA值即可

git tag -a <版本號> <SHA值> -m "<備注信息>"

比如 git tag -a 1.0.0 0c3b62d -m "Release Edition v1.0.0" 就是為SHA為0c3b62d的這次提交打了1.0發行版的tag

 

二、推送標簽

推送所有標簽
git push origin --tags

推送指定版本的標簽
git push origin <版本號>

 

三、查看tag

1、查看所有的tag
git tag
要顯示附注信息,我們需要用 show 指令來查看

 

2、查看某個tag

git show tag版本號

比如:git show V1.2

擴展:
查看分支
1、查看所有分支 git branch -a 2、查看遠程分支[分支、tag ] git ls-remote

 

 

四、刪除tag

刪除git tag分支

1、批量刪除本地tag
git tag | xargs -I {} git tag -d {}

2、批量刪除遠程tag
git tag | xargs -I {} git push origin :refs/tags/{}

命令說明
grep -v -E 排除master 和 dev

-v 排除
-E 使用正則表達式

xargs 將前面的值作為參數傳入 git branch -D 后面

-I {} 使用占位符 來構造 后面的命令

 

擴展:

刪除git分支

1、批量刪除本地分支
git branch -a | grep -v -E 'master|dev' | xargs git branch -D

2、批量刪除遠程分支
git branch -r| grep -v -E 'master|dev' | sed 's/origin\///g' | xargs -I {} git push origin :{}

如果有些分支無法刪除,是因為遠程分支的緩存問題,可以使用git remote prune

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM