在Git中搜索多个散列';曾经有一次

在Git中搜索多个散列';曾经有一次,git,grep,git-log,git-grep,Git,Grep,Git Log,Git Grep,我刚得到一个指令,要还原一堆提交的代码。好消息是,所有提交中都有一个引用字符串,类似于: ABC-1556 ABC-1616 ABC-4818 ABC-5919 这个推荐会给我其中一个,我如何修改grep推荐来找到它们 git log --pretty=oneline --abbrev-commit --grep='ABC-1556' 您可以将所有引用字符串放入一个文件(例如,patterns),然后使用xargs为每个字符串运行git log命令: xargs -iPATTERN git

我刚得到一个指令,要还原一堆提交的代码。好消息是,所有提交中都有一个引用字符串,类似于:

ABC-1556
ABC-1616
ABC-4818
ABC-5919
这个推荐会给我其中一个,我如何修改grep推荐来找到它们

git log --pretty=oneline --abbrev-commit --grep='ABC-1556'

您可以将所有引用字符串放入一个文件(例如,
patterns
),然后使用
xargs
为每个字符串运行
git log
命令:

xargs -iPATTERN git log --pretty=oneline --abbrev-commit --grep="PATTERN" < patterns

我试过这个,但没用:

git log --pretty=oneline --abbrev-commit --grep='ABC-1556|ABC-1616'
但我发现这确实:

git log --pretty=oneline --abbrev-commit --grep=ABC-1556 --grep=ABC-1616
问题解决了

git log --pretty=oneline --abbrev-commit --grep=ABC-1556 --grep=ABC-1616