如何在 Git 中搜索分支名称?

问题描述 投票:0回答:7

我想找到一个特定的分支,并且我知道它的名称将包含一个特定的子字符串(来自我们的错误跟踪器的问题的 ID),但我不知道该分支的完整名称(这就是我想知道)。

如何搜寻这家分行?

git search
7个回答
178
投票
git branch --all | grep <id>

117
投票

Git 1.7.8提供了一个不使用grep的解决方案:

git branch --list <pattern>
以及在 bash
git branch --list '<pattern>'
中,在模式周围加上引号。

这也适用于通配符 (

*
),因此您可以使用
git branch --list *<id>*
来查找您的分支。

这会过滤

git branch
命令其余部分返回的分支名称列表(例如,默认情况下仅本地分支、带有
git branch -a --list <pattern>
的所有分支等)。


14
投票
git branch -a | grep selector

或者

git branch -r | grep selector

-a 显示所有本地和远程分支,而 -r 仅显示远程分支。


13
投票

查找具有指定文本的分支名称

git branch --list *text*

对于前-我想找到有“生产”字样的分行

git branch --list *production*

10
投票

建立其他人给出的答案,我将其添加到我的

.gitconfig

[alias]
  findb = "!f(){ git branch -ra | grep $1; }; f"

所以在命令行上我可以输入

git findb BUG-123


0
投票

假设您使用的是 GitHub,有一个用于您的分支的下拉列表,并且该下拉菜单中的标签有一个搜索区域。

您可以使用该搜索区域来搜索您的分行名称。


0
投票

可以使用

git branch
-l
选项将多个模式传递到
--list
。将返回与模式匹配的所有分支。通配符
*
可用于匹配名称中包含子字符串的任何分支。

要过滤所有分支,请添加

-a
--all
选项。

例如:

git branch -la "*containsThisSubstring*" "*withThisSuffix" "withThisPrefix*"
© www.soinside.com 2019 - 2024. All rights reserved.