前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >效率脚本:删除已经合并的git分支

效率脚本:删除已经合并的git分支

作者头像
技术小黑屋
发布2018-09-04 17:18:14
1.4K0
发布2018-09-04 17:18:14
举报
文章被收录于专栏:技术小黑屋技术小黑屋

使用Git管理代码工程,着实方便了很多,但是当做完feature分支或者完成hotfix之后,总是忘记删除这些无用的分支,一个一个地删除着实麻烦,重复手工劳动不符合程序员的风格,于是写了一个简单的脚本。一键删除那些不需要的分支,让多余的干扰信息离开视线。

删除哪些分支?

删除的为Merge(合并)操作的源分支。如果工程正在处于分支A(HEAD为A分支),分支B已经合并到了分支A,即A分支包含了B分支的内容,则会删除B分支。

代码

1 2 3 4 5 6 7

#!/usr/bin/env ruby # encoding: utf-8 exceptBranches = ['master', 'pre', 'develop'] for branch in `cd #{ARGV[0]} && git branch -l`.split(' ') - ['*'] next if exceptBranches.include? branch system("git branch -d #{branch}") end

使用方法

1

ruby removeMergedBranches.rb your_git_project

执行结果

执行结果类似如下,注意如果没有进行合并,则会提示警告或者错误,这些可以忽略。

1 2 3 4 5 6 7

warning: deleting branch 'custom' that has been merged to 'refs/remotes/origin/custom', but not yet merged to HEAD. Deleted branch custom (was b63ab7d). Deleted branch hotfix (was 340cca0). Deleted branch mgit (was 86b4004). error: The branch 'develop_rtl' is not fully merged. If you are sure you want to delete it, run 'git branch -D develop_rtl'.

链接

在Github上的脚本

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 删除哪些分支?
  • 代码
  • 使用方法
  • 执行结果
  • 链接
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档