列出所有 git 个以 string 开头的本地分支

List all git local branches that start with string

我想列出所有仅以 abc 开头的本地分支(最终删除但为了安全...)。问题是这种 有效。但是,如果没有分支以 "abc" 开头,那么它会列出 ALL 个分支。这是我不想结束的事情(删除我所有的本地分支)

git for-each-ref --format="%(refname:short)" refs/heads/abc\* | xargs git branch --list

你只需要告诉xargs如果没有输入就不要执行它的命令。

您可以使用 -r--no-run-if-empty 参数来做到这一点。

git for-each-ref --format="%(refname:short)" refs/heads/abc\* | xargs --no-run-if-empty git branch --list

列出所有以“abc”开头的分支:

git branch --list "abc*"

所以如果你想删除它们,那么运行以下:

git branch --list "abc*" | xargs --no-run-if-empty git branch --delete

如果你想过着危险的生活,你可以在上面的命令中附加--force标志。