如何遍历 git 标签

Den*_*boy 5 svn git bash

我做了一些 svn 到 git 迁移。我所有的标签现在看起来都很“奇怪”:

7.18.2.0@3000
7.18.3.0@3000
7.18.4.0@3000
7.18.5.0@3000
Run Code Online (Sandbox Code Playgroud)

但是标签是对的。只是名字错了。现在我想重命名标签。

所以对于我想做的每个标签:

git tag new old
git tag -d old
git push origin :refs/tags/old
git push --tags
Run Code Online (Sandbox Code Playgroud)

我想写这个。但是我已经在寻找正确的方法来遍历我的所有标签。

我该如何循环:for every tag do...

rom*_*lox 6

forgit tag输出的循环怎么样?

for crt_tag in $(git tag) 
do
    # if you want to suppress @... part
    git tag ${crt_tag%@*} $crt_tag
    git tag -d $crt_tag 
    git push origin :refs/tags/$crt_tag 
    git push --tags
done
Run Code Online (Sandbox Code Playgroud)