zig*_*arn 35
要删除本地多个标签:git tag:
git tag -d <tagname> ...
简单地说:
git tag -d TAG1 TAG2 TAG3
Run Code Online (Sandbox Code Playgroud)
要远程删除多个标签:git push:
git push [-d | --delete] [<repository> [<refspec> ...]]
简单地说:
git push ${REMOTE_NAME:-origin} --delete TAG1 TAG2 TAG3
Run Code Online (Sandbox Code Playgroud)
小智 13
如果您有太多标签(就像我们的例子),您可能需要这样做:
git tag -l > tags_to_remove.txt
Run Code Online (Sandbox Code Playgroud)
然后在您的首选编辑器中编辑文件 - 查看并删除您想要保留的标签(如果有),然后在本地运行它
git tag -d $(cat ./tags_to_remove.txt)
Run Code Online (Sandbox Code Playgroud)
并远程:
git push -d origin $(cat ./tags_to_remove.txt)
Run Code Online (Sandbox Code Playgroud)
小智 11
我发现了一个简单的方法来做到这一点,如果你有grep
和xargs
安装.我无耻地从https://gist.github.com/shsteimer/7257245获取此信息.
使用您要查找的模式删除所有远程标记:
git tag | grep <pattern> | xargs -n 1 -I% git push origin :refs/tags/%
Run Code Online (Sandbox Code Playgroud)
删除所有本地标记:
git tag | xargs -n 1 -I% git tag -d %
Run Code Online (Sandbox Code Playgroud)
获取仍然存在的远程标记:
git fetch
Run Code Online (Sandbox Code Playgroud)
Aec*_*Liu 10
它将删除所有匹配的标记模式。
//Delete remote:
git push -d origin $(git tag -l "tag_prefix*")
// Delete local:
git tag -d $(git tag -l "tag_prefix*")
// Examples:
git tag -d $(git tag -l "v1.0*")
git push -d origin $(git tag -l "*v3.[2]*-beta*")
Run Code Online (Sandbox Code Playgroud)
您可以通过指定要删除的所有标签,用一个命令删除多个标签
git tag -d 1.1 1.2 1.3
Run Code Online (Sandbox Code Playgroud)
然后你可以推送所有删除的标签。当然,您可以在推送之前使用单独的命令删除标签。
要推送删除标签,只需列出您要删除的所有标签。删除一个标签的命令相同
git push --delete origin 1.1 1.2 1.3
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
8695 次 |
最近记录: |