首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >是否有可能在git项目的所有分支中执行'grep搜索'?

是否有可能在git项目的所有分支中执行'grep搜索'?
EN

Stack Overflow用户
提问于 2018-03-29 06:20:10
回答 2查看 0关注 0票数 0

是否可以在Git控件源项目的所有分支中运行git grep?或者还有其他命令要运行?

EN

回答 2

Stack Overflow用户

发布于 2018-03-29 14:34:45

建议:

代码语言:txt
复制
 git grep <regexp> $(git rev-list --all)

搜索所有提交,其中应该包括所有分支。

另一种形式是:

代码语言:txt
复制
git rev-list --all | (
    while read revision; do
        git grep -F 'yourWord' $revision
    done
)

如果你想要的话,别忘了那些设置:

代码语言:txt
复制
# Allow Extended Regular Expressions
git config --global grep.extendRegexp true
# Always Include Line Numbers
git config --global grep.lineNumber true

这个别名也可以帮助你:

代码语言:txt
复制
git config --global alias.g "grep --break --heading --line-number"
票数 0
EN

Stack Overflow用户

发布于 2018-03-29 15:59:23

git log可以更有效地搜索所有分支的文本,特别是如果有许多匹配项,而且希望首先看到更多的(相关)更改。

代码语言:txt
复制
git log -p --all -S 'search string'
git log -p --all -G 'match regular expression'

这些日志命令列表提交了添加或删除给定的搜索字符串/regex的命令,(通常)是最近的。-p选项将使添加或删除模式的位置显示相关的差异,因此可以在上下文中看到它。

找到一个相关的提交,添加你正在寻找的文本(例如。找到包含提交的分支:

代码语言:txt
复制
git branch -a --contains 8beeff00d
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/-100003739

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档