如何通过提交信息在Git仓库中搜索?

1218

我已经通过提交信息"Build 0051"将一些源代码检入GIT中。

然而,我似乎无法再找到那些源代码了——我该如何使用命令行从GIT存储库中提取这些源代码?

更新

  1. 使用SmartGIT检入版本0043、0044、0045和0046。
  2. 检出0043,在不同的分支上检入版本直到0051。
  3. 重新检出0043。
  4. 现在,0051已经消失了。

更新

源代码确实存在,现在只需要检出它:

C:\Source>git log -g --grep="0052"
commit 77b1f718d19e5cf46e2fab8405a9a0859c9c2889
Reflog: HEAD@{10} (unknown <Mike@.(none)>)
Reflog message: commit: 20110819 - 1724 - GL: Intermediate version. File version:  v0.5.0 build 0052.
Author: unknown <Mike@.(none)>
Date:   Fri Aug 19 17:24:51 2011 +0100

    20110819 - 1724 - GL: Intermediate version. File version: v0.5.0 build 0052.

C:\Source>

1
请参见https://dev59.com/-WMl5IYBdhLWcg3wyJfz。 - ripper234
可能是重复的问题:如何在git提交中使用grep查找特定单词 - user456814
13个回答

3
如果更改不是太旧,可以执行以下操作:
使用命令 git reflog 来检查提交ID,然后进行检出。

2
这是:

git log --oneline --grep='Searched phrase'

或者这样:
git log --oneline --name-status --grep='Searched phrase'

对我来说,命令最好用。


-1
gitk中,您可以按提交消息进行搜索。

enter image description here

您可以通过命令 sudo apt install gitk 安装 gitk。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接