前言
什么是tag?tag是節點的意思,一般在上線的時候使用。比如說:你在本地做了好幾個功能,然后把這些功能提交到了上線的分支上,某個時刻,你想上線你的新功能,這個時候你需要你個tag來標記一下,告訴自己和別人,我是在這個地方上線的。當然,你完全也可以不這樣做,但是如果你不這樣做的話,你該怎么判別你是在哪里上線的代碼呢?通過commit的信息嗎?當然也是可以的,不過你需要一個個的看commit的信息,你不覺得有點麻煩嗎?
其實很多功能和操作用另一種方式都能實現,但新功能的出現往往是因為用舊的方式處理比較麻煩,所以我們才搞了個新的方法出來,tag就是一個很明顯的例子。
簡述
作為版本管理工具,Git可以對某個版本打上標簽(tag),表示本版本為發行版。在發布軟件,以及使用CocoaPods創建依賴庫等情況時,需要對其版本使用標簽注釋。故簡單總結一下添加tag的方式。
使用Git命令
查看標簽
打印所有標簽
git tag`
打印符合檢索條件的標簽
git tag -l <版本號>
如 git tag -l 1.*.*
為搜索一級版本為1的版本
查看對應標簽狀態
git checkout <版本號>
創建本地標簽
創建輕量標簽
輕量標簽指向一個發行版的分支,其只是一個像某commit的引用,不存儲名稱時間戳及標簽說明等信息。定義方法如下
git tag <版本號>-light
創建帶附注標簽
相對於輕量標簽,附注標簽是一個獨立的標簽對象,包含了名稱時間戳以及標簽備注等信息,同時指向對應的commit。定義方法如下
git tag -a <版本號> -m "<備注信息>"
同時我們也可以像特定的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 tag -d <版本號>
將本地標簽提交到遠程倉庫
前面所提到的創建標簽,只是將標簽添加到了本地的版本管理,我們需要在創建之后將本地標簽同步到遠程倉庫,如Github。
推送所有標簽
git push origin --tags
推送指定版本的標簽
git push origin <版本號>
刪除遠程倉庫的標簽
同創建本地標簽一樣,刪除了本地標簽之后也要同時刪除遠程倉庫的標簽。
新版本Git (> v1.7.0)
git push origin --delete <版本號>
新舊版本通用方法
舊版本Git並沒有提供直接刪除的方法,而我們可以通過將一個空標簽替換現有標簽來實現刪除標簽,即如下命令
git push origin :refs/tags/<版本號>
總結
最后總結一下常用命令,方便查閱。
/// 查看標簽 // 打印所有標簽 git tag // 打印符合檢索條件的標簽 git tag -l 1.*.* // 查看對應標簽狀態 git checkout 1.0.0 /// 創建標簽(本地) // 創建輕量標簽 git tag 1.0.0-light // 創建帶備注標簽(推薦) git tag -a 1.0.0 -m "這是備注信息" // 針對特定commit版本SHA創建標簽 git tag -a 1.0.0 0c3b62d -m "這是備注信息" /// 刪除標簽(本地) git tag -d 1.0.0 /// 將本地標簽發布到遠程倉庫 // 發送所有 git push origin --tags // 指定版本發送 git push origin 1.0.0 /// 刪除遠程倉庫對應標簽 // Git版本 > V1.7.0 git push origin --delete 1.0.0 // 舊版本Git git push origin :refs/tags/1.0.0
--------------------- 本文來自 MinecodeAir 的CSDN 博客 ,全文地址請點擊:https://blog.csdn.net/b735098742/article/details/78935748?utm_source=copy