您的位置:首页 > 本地本地

如何批量删除远程的tag

admin2024-08-31人已围观

如何批量删除远程的tag

我用Google 搜了 how to delete git tags batch,发现老外的说法大概是,bulk delete,哈哈,英语不行啊。

无非就是shell下的一些做法,感觉实际使用上也够了。

首先就是找到远端要删除的tags列表,关键是用对指令。

git show-ref --tag

这个指令可以列出所有的远端的tag列表,然后就是shell下的一般处理手段了。

git push origin :<tag>

如上指令,会致使远程的tag被删除。用管道一连接,万事大吉。

git show-ref --tag | awk '/(.*)(\s+)(.*)$/ {print : $2}' | xargs git push origin

上面的指令就是拼接完整的指令了,不过这个指令,会删除远端所有的tag,慎用,如果希望删除符合条件的,应该修改awk指令的正则表达式。

删除完了远端的tag,本地的tag,删法还不是太一样,不过原理相同。

git tag | grep v1.1.0.\d$ | xargs git tag -d

举个例子,上述命令删除本地所有 v1.1.0.x 的tag,这个指令,会最多删除10个tag。

怎么取得git 打好的tag所对应的代码

其实要取得不同的branch的tag,只需要在相应的分支上打tag就行了。这样的tag就唯一对应了不同的分支。例如,你在master上打了tag为v1,在某个branch上打了tag为v2,则你取出v2代码的时候,自然就是对应的branch分支了。

很赞哦! ()

上一篇:Docker 国内镜像'>谈谈自媒体、新媒体和融媒体

下一篇:返回列表'>返回列表

随机图文