是否可以在Git控件源项目的所有分支中运行git grep?或者还有其他命令要运行?
发布于 2018-03-29 14:34:45
建议:
git grep <regexp> $(git rev-list --all)搜索所有提交,其中应该包括所有分支。
另一种形式是:
git rev-list --all | (
while read revision; do
git grep -F 'yourWord' $revision
done
)如果你想要的话,别忘了那些设置:
# Allow Extended Regular Expressions
git config --global grep.extendRegexp true
# Always Include Line Numbers
git config --global grep.lineNumber true这个别名也可以帮助你:
git config --global alias.g "grep --break --heading --line-number"发布于 2018-03-29 15:59:23
git log可以更有效地搜索所有分支的文本,特别是如果有许多匹配项,而且希望首先看到更多的(相关)更改。
git log -p --all -S 'search string'
git log -p --all -G 'match regular expression'这些日志命令列表提交了添加或删除给定的搜索字符串/regex的命令,(通常)是最近的。-p选项将使添加或删除模式的位置显示相关的差异,因此可以在上下文中看到它。
找到一个相关的提交,添加你正在寻找的文本(例如。找到包含提交的分支:
git branch -a --contains 8beeff00dhttps://stackoverflow.com/questions/-100003739
复制相似问题