如何用git rev-list --grep仅匹配提交消息开头为Fix-123的提交?
解决Git rev-list仅匹配提交消息开头的问题
可以直接通过git rev-list的参数组合实现精准匹配,无需管道过滤:
- 使用
--grep结合Perl风格正则(通过-P参数启用),利用\A锚点匹配整个提交消息的开头,而非某一行的开头。
具体命令如下:
git rev-list --grep='\AFix-123' -P
原理说明
默认Git采用基础正则语法,^锚点代表任意行的开头,因此会误匹配提交消息后续行中以Fix-123开头的内容。启用Perl正则后,\A锚点专指整个提交消息字符串的起始位置,只会匹配第一行开头符合条件的提交,彻底避免误匹配。
内容的提问来源于stack exchange,提问作者hexaflexagonal
相关产品推荐
相关产品推荐

