Git:使用票号进行提交

时间:2016-03-16 13:55:57

标签: regex git

好的,所以我试图找出我的发布分支中是否包含了一张票。票证全部由项目ID和id号构成,例如(PRO-123)。我试过这个命令:

git log --date=short --format="%h: %ad (%cn)  %s" --abbrev-commit --grep='[A-Z]+-[0-9]+'

但它没有返回任何东西。如果我带走了--grep部分,那么模式的匹配就会很多。例如:

a6fdcd0: 2016-03-16 (ajfaraday)  Merge remote-tracking branch 'origin/develop_5.2_customer' into release_5.2_customer
85d107a: 2016-03-16 (username)  Merge pull request #477 from myapp/fix_CST-827_outline_method_in_use_check
6024bda: 2016-03-16 (Andrew Faraday)  Merge pull request #473 from myapp/fix_CST-810_soap_container_create_bounds
eec2a61: 2016-03-16 (ajfaraday)  added missing stubs
c03b3cb: 2016-03-15 (username)  Merge pull request #472 from myapp/fix_CST-490_options_are_clickable_for_user_without_module_admin_rights
728539b: 2016-03-15 (username)  Merge pull request #474 from myapp/fix_CST-873_hidden_error_on_pev_validation
4a11dd7: 2016-03-15 (username)  Merge pull request #475 from myapp/fix_CST-854_copy_process_version_project_element_values
4a5af44: 2016-03-15 (ajfaraday)  CST-854: fixed in-use check for methods

我做错了什么?

1 个答案:

答案 0 :(得分:0)

好的,我想我已经发现了这个问题。它在正则表达式中有一些小的语言差异(我通常用我的Ruby代码编写它们)。

由于某些原因[A-Z]+没有匹配,但[A-Z]*工作正常。这条线做了我想要的:

git log --date=short --format="%h: %ad (%cn)  %s" --abbrev-commit --grep="[A-Z]*-[0-9]*"