原文連接html
Git
對於開發者來講是個很是必要的工具,它能很是方便的維護多人共享的代碼庫git
Git-scm
簡單的定義:github
Git
是一個開源的分佈式版本控制系統,設計用來快速有效的管理各類小項目和大項目正則表達式
若是你還不知道Git
,我推薦你首先學習一些基礎知識bash
在這篇文章中,咱們將學習到什麼是git tag
,爲何要使用它和何時以及怎麼使用它。這因該足夠讓你在你的項目使用它了分佈式
讓咱們開始吧ide
git tag
git tag
其實是指向了Git history 中的一個commit,它能夠標記git history中某個的commit,之後能夠方便的找到它工具
你能夠將 tag 看作是一個不變的分支學習
Tag 表明某個特定分支在必定時刻的版本。因此,tag 本質上是開發者在程序中作的一個標記fetch
git tag
你確定看到過v1.0.0
這樣的標記。它表示一個產品的版本號。一般,當產品有重大的更新而且須要推送給用戶時,就會建立一個tag。
tag 一般用戶標記一個里程碑,例如能夠發佈給用戶或者企業的新功能或一些bug修復
你確定不但願每次修復Bug都要推送給客戶,Tag 能夠確保用戶使用的是某個特定時刻的版本,而不須要每次代碼的新提交都推送給客戶。
git tag
如今你已經知道了tag的應用場景,下面就開始看看怎麼使用它
tag
git tag <tag_name>
// Eg. git tag v1.0.1
複製代碼
這條命令會將最新的commit打上tag,tag_name
就是你要起得tag 名字,一般是相似v1.0.1這種。固然你也能夠命名任何你喜歡的名字
一般 tag name 是:
v<major>.<minor>.<patch>
複製代碼
建立了tag以後,能夠push到遠端代碼庫
git push --tags
複製代碼
也能夠爲tag添加描述信息
git tag -a <tag_name> -m "message"
複製代碼
-a
是什麼意思呢?下面來看看
tag
類型一共有兩種tag
類型:
附註標籤存儲一個額外的信息,好比做者、發行說明、tag 信息存儲爲Git倉庫中完整的數據,這些數據對於一個公開的項目是很是重要的
-a
表示該tag是附註標籤
git tag -a v1.0.1 -m "First release"
複製代碼
輕量標籤時最簡單的打tag的方式,它只存儲tag name和關聯的commit的hash值,不包含額外的信息,就相似於一個書籤
git tag v2.1-lw
複製代碼
lw
表示輕量級標籤,在tag name中加lw
是爲了更好的可讀性
git tag <tag_name> <commit_sha>
複製代碼
上面的命令可讓你爲一些老的commit打tag
tag
git tag
複製代碼
這條命令將會展現全部存在的tag
輸出多是這樣:
1.0.0
1.0.1
1.0.2
1.0.3
2.0.0
2.1.0
複製代碼
你可使用-l
或者--list
選項利用正則表達式進行過濾
git tag -l "1.0*"
複製代碼
結果:
1.0.0
1.0.1
1.0.2
複製代碼
tag
信息git show <tag_name>
// Eg. git show v1.0.1
複製代碼
將會展現做者、tag 信息、commit信息等其餘信息
tag
git tag -d <tag_name>
複製代碼
tag
git push origin <branch> --tags
複製代碼
將會把本地tag
推送到遠程倉庫
tag
git fetch --tags
複製代碼
將會把遠程倉庫tag
拉取到本地
tag
git checkout <tag_name>
// Eg. git checkout v1.0.1
複製代碼
你能夠用這條命名,將代碼回退到打某個tag
的時候
你如今已經掌握了Git tag
,開始在你的項目中應用起來吧😁
更多學習資源: