首页 > 解决方案 > 通过提交消息标题引用 git commit

问题描述

如何通过提交消息标题中的文本/单词来引用 git 提交?

我想避免:

标签: gitgit-rev-parse

解决方案


TL;博士:

引用匹配的最新提交<text>

:/<text>, e.g. :/fix nasty bug

<rev>引用可从该匹配项中获得的最新提交<text>

   <rev>^{/<text>}, e.g. HEAD^{/fix nasty bug}

手册页条目

man gitrevisions说:

<rev>引用可以从该匹配项中获得的最新提交<text>

   <rev>^{/<text>}, e.g. HEAD^{/fix nasty bug}
       A suffix ^ to a revision parameter, followed by a brace pair that
       contains a text led by a slash, is the same as the :/fix nasty bug
       syntax below except that it returns the youngest matching commit
       which is reachable from the <rev> before ^.

在任何匹配的地方引用最近的提交<text>

   :/<text>, e.g. :/fix nasty bug
       A colon, followed by a slash, followed by a text, names a commit
       whose commit message matches the specified regular expression. This
       name returns the youngest matching commit which is reachable from any
       ref. The regular expression can match any part of the commit message.
       To match messages starting with a string, one can use e.g.  :/^foo.
       The special sequence :/!  is reserved for modifiers to what is
       matched.  :/!-foo performs a negative match, while :/!!foo matches a
       literal !  character, followed by foo. Any other sequence beginning
       with :/!  is reserved for now. Depending on the given text, the
       shell’s word splitting rules might require additional quoting.

推荐阅读