【问题标题】:Finding a revision by commit message通过提交消息查找修订
【发布时间】:2015-12-14 03:15:54
【问题描述】:

我知道这种事情经常被问到(例如here),但是(也许正因为如此)我一直找不到我要找的东西。

我知道我可以通过与其提交消息匹配的模式来指定提交,而不是通过其哈希值,如下所示:

git show ":/rename function X to function Y"

这向我显示了最近的提交,其消息以给定的模式开头,而我不必先搜索它的哈希。

我的问题是:

  1. 此功能的名称是什么,它记录在哪里? (在 Google 上搜索 :/ 是徒劳的)

  2. 我怎样才能获得该提交的 parent?这不起作用:

    git show ":/pattern"^
    

【问题讨论】:

    标签: git revision-history commit-message


    【解决方案1】:

    这有点难看,可能有更好的方法,但您可以使用类似以下的方法来查找父级:

    git show $(git rev-parse ":/pattern")^
    

    git rev-parse 提供指定修订版的 SHA1,您可以对其应用 ^ 等运算符。或者,您可以使用git name-rev --name-only,它将为修订提供一个符号名称(例如master~10)。

    【讨论】:

      【解决方案2】:

      :/ 语法似乎没有专用名称,并记录在 gitrevisions(7) 手册页中。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-01-05
        • 2018-05-19
        • 1970-01-01
        • 1970-01-01
        • 2023-03-24
        相关资源
        最近更新 更多