删除 origin 中已经合并的远程分支

Delete remote branches in origin that have already been merged

我们正在使用一个名为 'integration' 的分支作为我们的主分支(我们仍然有一个主分支,但我们现在没有使用它)并且我们已经创建了一堆分支然后合并回来,需要删除。我发现 this question 关于删除本地分支,但不确定是否将这些建议应用到我的特定情况。

认为这会起作用,不想运行这个命令并且让它出错并搞砸回购。

$ git checkout integration

$ git branch -r --merged | grep -v integration| sed 's/origin//:/' | xargs -n 1 git push origin

您需要转义 /,使其成为 ...sed 's/origin\//:/'...,但除此之外,当然可以。

要测试这样的东西,只需关闭 xargs 部分,看看会发生什么。