Git 如何批量删除 tag/分支

Tag 批量删除操作:

        在Git v1.7.0 之后,可以使用这种语法删除远程分支:
                $ git push origin --delete <branchName>
        删除tag这么用:
                git push origin --delete tag <tagName>

   批量删除Tag :git tag -l | awk '/tag_20180[1-5]{1}/{print}' | xargs git push origin --delete tag

    注解:git tag -l 是查看所有本地tag 。
                “|” 管道,上一条命令的输出,作为下一条命令参数,如 echo 'yes' | wc -l
                awk 行处理器: 依次对每一行进行处理,然后输出。
                awk '/tag_20180[1-5]{1}/{print}'  : awk 中的正则表达式使用。awk命令
                xargs : 是给其他命令传递参数的一个过滤器,也是组合多个命令的一个工具 xargs命令
   整个命令的理解就是:先通过 git tag -l 列出所有本地tag,然后用 awk 做正则匹配到需要删除的 tag号。将匹配到的 tag号 用 xargs 传给 git push origin --delete tag 命令。【git push origin --delete tag xxx】

批量删除分支:git branch --all | awk '/branch_20180[1-5]{1}/{print}' | xargs git push origin --delete

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • git branch 查看本地所有分支 git status 查看当前状态 git commit 提交 git b...
    猿万阅读 10,611评论 1 45
  • git常用命令 GIT常用命令备忘:http://stormzhang.com/git/2014/01/27/gi...
    新篇章阅读 12,765评论 1 26
  • Git 基础 基本原理 客户端并不是只提取最新版本的文件快照,而是把代码仓库完整的镜像下来。这样一来,任何一处协同...
    __silhouette阅读 16,050评论 5 147
  • Add & Commit git init 初始化一个 Git 仓库(repository),即把当前所在目录变成...
    冬絮阅读 10,382评论 0 9
  • 今天分享一个双重曝光的效果,过程主要用到了图层蒙版、不透明度、快速选择工具、曲线及色阶,先看其他两个效果: 开始分...
    委婉的鱼阅读 8,634评论 42 126