Git 如何查找提交消息中没有特定单词的提交?
我想列出提交消息中缺少特定单词(例如-‘ReviewBy’)的所有提交。我该怎么做Git 如何查找提交消息中没有特定单词的提交?,git,Git,我想列出提交消息中缺少特定单词(例如-‘ReviewBy’)的所有提交。我该怎么做 git log+grep带有排除模式是我能想到的最简单的方法: git log --pretty=oneline | grep -v "reviewed by" git日志将输出您的所有提交 --pretty=oneline将在一行中显示提交id和提交消息 grep将匹配其标准输入中的模式,使用-v标志,它将排除匹配的行。
git log
+grep
带有排除模式是我能想到的最简单的方法:
git log --pretty=oneline | grep -v "reviewed by"
git日志将输出您的所有提交
--pretty=oneline
将在一行中显示提交id和提交消息
grep
将匹配其标准输入中的模式,使用-v
标志,它将排除匹配的行。
+grep
使用排除模式是我能想到的最简单的方法:
git log --pretty=oneline | grep -v "reviewed by"
git日志将输出您的所有提交
--pretty=oneline
将在一行中显示提交id和提交消息
grep
将匹配其标准输入中的模式,使用-v
标志,它将排除匹配的行。假设您处于正常的UNIX环境中:
git log --oneline | grep -v "reviewed by"
grep的-v开关反转匹配,因此在本例中它将返回所有不包含“ReviewBy”的行
您还可以使用正则表达式进行搜索
git log --oneline --grep=REGEXHERE
但是在您的情况下,将grep命令行工具与-v开关结合使用可能更简单,而不是与正则表达式混为一谈。假设您处于正常的UNIX环境中:
git log --oneline | grep -v "reviewed by"
grep的-v开关反转匹配,因此在本例中它将返回所有不包含“ReviewBy”的行
您还可以使用正则表达式进行搜索
git log --oneline --grep=REGEXHERE
但是在您的例子中,使用grep命令行工具和-v开关可能更简单,而不是与正则表达式混在一起。git log--oneline | grep-v“review by”返回不包含review by的行。例如,如果我将消息提交为提交的摘要_第2行详细说明了提交应该做什么_第3行\uuReviewBy-Abc-返回前2行我想这个命令可以-'git log--invert grep--grep=“revieved”--pretty=format:“%cn,%h,%f,%cd”'在git的最新版本中,--oneline开关是--pretty=oneline--abbrev commit的简写。如果它为您显示了三行代码,那么很可能您使用的是在实现该命令行开关之前的较旧版本的git。请参阅git日志--oneline | grep-v“ReviewBy”返回不包含ReviewBy的行。例如,如果我将消息提交为提交的摘要_第2行详细说明了提交应该做什么_第3行\uuReviewBy-Abc-返回前2行我想这个命令可以-'git log--invert grep--grep=“revieved”--pretty=format:“%cn,%h,%f,%cd”'在git的最新版本中,--oneline开关是--pretty=oneline--abbrev commit的简写。如果它为您显示了三行代码,那么很可能您使用的是在实现该命令行开关之前的较旧版本的git。看见