使用分支名称的前几个字符检出git分支。

6

我可以使用一个命令,例如git checkout branch_na*,它会自动补全并检出该分支吗?


负面幽灵骑士 - Madbreaks
3个回答

4

我不知道在那种情况下如何使用通配符,比如*。然而,有一个Git Bash自动完成脚本,您可以在shell提示符处按<Tab>键来自动完成部分输入的分支名称。


是的,我其实已经知道了并且我也使用过。我只是想知道git是否支持通配符。 - masterforker
该链接现在已经失效/重定向到书籍的v2版本,这导致我无法找到上述的自动完成脚本。 - Nuclear03020704
1
@Nuclear03020704:git自动补全脚本现在通常随Git软件包一起提供。这是Git存储库中的完成脚本:https://github.com/git/git/tree/master/contrib/completion - Greg Hewgill

3

我想知道 git 是否支持通配符

使用您所提到的方式将依赖于 bash(它不知道任何关于分支的信息)

因此,您需要依靠其他方法,比如:

git checkout $(git for-each-ref --format='%(refname:short)' refs/heads/branch_na.*|head)

2
这将有助于通过通配符提取分支名称。由于分支名称还附带额外的 * 和空格,我们会对其进行修剪以避免路径规范问题。
git checkout $(git branch --list "*branch-name-*" | tr '*' ' ')

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接