我希望本地和远程存储库在分支方面始终保持同步。
在 GitHub 上进行拉取请求审查后,我合并并删除了那里的分支(远程)。
我如何在本地存储库中获取此信息并让 Git 也删除我的本地版本的分支?
快速的方法
git branch --merged | grep -v "\*" | xargs -n 1 git branch -d
注意:如果你没有开启master
,这有可能删除分支。继续阅读“更好的方法”。
确保我们保留主人
您可以确保master
,或与此相关的任何其他分支,不会被删除grep
寻求更多。在这种情况下你会去:
git branch --merged | grep -v "\*" | grep -v "YOUR_BRANCH_TO_KEEP" | xargs -n 1 git branch -d
所以如果我们想保留master
, develop
and staging
例如,我们会去:
git branch --merged | grep -v "\*" | grep -Ev "(\*|master|develop|staging)" | xargs -n 1 git branch -d
将此设为别名
由于它有点长,您可能需要添加一个别名.zshrc
or .bashrc
。我的叫gbpurge
(for git branches purge
):
alias gbpurge='git branch --merged | grep -Ev "(\*|master|develop|staging)" | xargs -n 1 git branch -d'
然后重新加载你的.bashrc
or .zshrc
:
. ~/.bashrc
or
. ~/.zshrc
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)