问题:我想找到一种删除所有本地分支的方法,这些分支没有对应远程分支。把分支名称传递给
例如:
我创建了一个没有远程分支的新分支:
git branch -D {branch_name}
很容易,但是如何首先获取该列表呢?例如:
我创建了一个没有远程分支的新分支:
$ git co -b no_upstream
我列出了所有我的分支,只有一个带有远程
$ git branch -a
master
* no_upstream
remotes/origin/HEAD -> origin/master
remotes/origin/master
我应该运行什么命令才能得到答案no_upstream
?
我可以运行git rev-parse --abbrev-ref --symbolic-full-name @{u}
,它会显示没有远程:
$ git rev-parse --abbrev-ref --symbolic-full-name @{u}
error: No upstream configured for branch 'no_upstream'
error: No upstream configured for branch 'no_upstream'
fatal: ambiguous argument '@{u}': unknown revision or path not in the working tree.
Use '--' to separate paths from revisions, like this:
'git <command> [<revision>...] -- [<file>...]'
但由于这是一个错误,它不允许我使用它或将其传递给其他命令。我打算将其用作一个 shell 脚本别名,如 git-delete-unbranched
,或者制作一个超级简单的 Gem,例如 git-branch-delete-orphans
。