【发布时间】:2018-01-12 14:23:39
【问题描述】:
我刚刚得到一个指令来恢复一堆提交的代码。好消息是所有提交都有一个引用字符串,例如:
ABC-1556
ABC-1616
ABC-4818
ABC-5919
这个command会给我其中一个,我如何修改grepcommand来找到它们?
git log --pretty=oneline --abbrev-commit --grep='ABC-1556'
【问题讨论】:
我刚刚得到一个指令来恢复一堆提交的代码。好消息是所有提交都有一个引用字符串,例如:
ABC-1556
ABC-1616
ABC-4818
ABC-5919
这个command会给我其中一个,我如何修改grepcommand来找到它们?
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 -E --grep="ABC-1556|ABC-1616|ABC-4818|ABC-5919"
【讨论】:
我试过了,但是没用:
git log --pretty=oneline --abbrev-commit --grep='ABC-1556|ABC-1616'
但我发现确实如此:
git log --pretty=oneline --abbrev-commit --grep=ABC-1556 --grep=ABC-1616
问题解决了!
【讨论】: