通常在釋出軟體的時候打一個tag,tag會記錄版本的commit号,友善後期回溯。
列出已有的tag
git tag
顯示tag
加上-l指令可以使用通配符來過濾tag
tag顯示過濾
建立tag
使用git tag指令跟上tag名字,直接建立一個tag。
git tag v1.0
上面建立一個名為v1.0的tag。使用git tag指令可以看到新增加的tag。
建立tag
還可以加上-a參數來建立一個帶備注的tag,備注資訊由-m指定。如果你未傳入-m則建立過程系統會自動為你打開編輯器讓你填寫備注資訊。
git tag -a tagName -m "my tag"
建立有備注資訊的tag
檢視tag詳細資訊
git show指令可以檢視tag的詳細資訊,包括commit号等。
git show tagName
檢視v1.0tag的詳細資訊
檢視帶備注的v1.1的詳細資訊
tag最重要的是有git commit号,後期我們可以根據這個commit号來回溯代碼。
給指定的某個commit号加tag
打tag不必要在head之上,也可在之前的版本上打,這需要你知道某個送出對象的校驗和(通過git log擷取,取校驗和的前幾位數字即可)。
git tag -a v1.2 9fceb02 -m "my tag"
将tag同步到遠端伺服器
同送出代碼後,使用git push來推送到遠端伺服器一樣,tag也需要進行推送才能到遠端伺服器。
使用git push origin [tagName]推送單個分支。
git push origin v1.0
推送本地所有tag,使用git push origin --tags。
切換到某個tag
跟分支一樣,可以直接切換到某個tag去。這個時候不位于任何分支,處于遊離狀态,可以考慮基于這個tag建立一個分支。
删除某個tag
本地删除
git tag -d v0.1.2
遠端删除
git push origin :refs/tags/
git push origin :refs/tags/v0.1.2