git批量删除标签(tag)
*先删除远程标签再删除本地的标签;此命令只能在 git bash 中使用,vscode中无法使用
删除远端以 ‘2.’ 开头的 tag:
git ls-remote --tags origin | awk '/refs\/tags\/2\./ {print ":" $2}' | xargs -n 1 git push origin
# 上述命令使用`git ls-remote --tags origin”列出远程仓库中的所有标签,
# 然后使用`awk`过滤出以'refs/tags/1.”开头的标签,
# 并使用`xargs -n 1 git push origin' 删除它们。
# xargs -n num 后面加次数,表示命令在执行的时候一次用的argument的个数,默认是用所有的。
删除本地以 ‘2.’ 开头的 tag:
git tag -l '2.*' | xargs git tag -d
# 上述命令使用'git tag -1'1.*列出所有以“1.”开头的标签,并使用`xargs git tag删除它们。
请注意,
执行这些命令前,请确保你已经切换到正确的 Git 仓库目录,并且具有适当的权限来删除标签。
删除远程标签可能需要对远程仓库具有写权限。此外,删除标签是不可逆的操作,请谨慎执行。
蜉蝣过山亦有风