如何删除Git仓库中冗余的tag?

好比以下tag:javascript

b_3.0.18_201806201808
b_3.0.18_201806201819
b_3.0.18_201806212108

一、一个一个删

  • 本地删除tag :
git  tag -d b_3.0.18_201806201808
git  tag -d b_3.0.18_201806201819
git  tag -d b_3.0.18_201806212108
  • 删除远程tag:
git push origin :refs/tags/b_3.0.18_201806201808
git push origin :refs/tags/b_3.0.18_201806201819
git push origin :refs/tags/b_3.0.18_201806212108
  • 查看本地tag: git tag -l
  • 查看远程tag: git show-ref --tag
很麻烦!!!

二、批量删

用到awk 正则表达式

参考:html

http://javascript.ruanyifeng....java

https://www.cnblogs.com/OldJa...git

本例正则能够是:/^b_4.0.0_201806[0-9]{6}$/正则表达式

  • 批量删本地:
git tag -l| awk '/^b_4.0.0_201806[0-9]{6}$/ {print  $1}' | xargs git tag -d
  • 批量删远程:
git show-ref --tag | awk '/^b_4.0.0_201806[0-9]{6}$/ {print ":" $2}' | xargs git push origin
  • 查看本地: git tag -l
  • 查看远程: git show-ref --tag
相关文章
相关标签/搜索