Ruby实现的删除已经合并的git分支脚本分享
技术  /  管理员 发布于 6年前   290
使用Git管理代码工程,着实方便了很多,但是当做完feature分支或者完成hotfix之后,总是忘记删除这些无用的分支,一个一个地删除着实麻烦,重复手工劳动不符合程序员的风格,于是写了一个简单的脚本。一键删除那些不需要的分支,让多余的干扰信息离开视线。
删除哪些分支?
删除的为Merge(合并)操作的源分支。如果工程正在处于分支A(HEAD为A分支),分支B已经合并到了分支A,即A分支包含了B分支的内容,则会删除B分支。
代码
复制代码 代码如下:
#!/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
使用方法
复制代码 代码如下:
ruby removeMergedBranches.rb your_git_project
执行结果
执行结果类似如下,注意如果没有进行合并,则会提示警告或者错误,这些可以忽略。
复制代码 代码如下:
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'.
122 在
学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..123 在
Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..原梓番博客 在
在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..博主 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..1111 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
Copyright·© 2019 侯体宗版权所有·
粤ICP备20027696号