git搜索历史上曾经的文本内容

文章目录

问题

我们知道,github有文本搜索功能:

比如想搜哪些文件内容包括 aaa ,在搜索框中输入 aaa

但是,如果是历史上曾经有过的文本,这个办法貌似不行。

比如文件 test.txt ,历史上曾经包含了 aaa 文本,但是后来修改过文件,当前的文件里已经不包含 aaa 文本了。此时在github里就搜不到了:

该怎么搜索呢?

在命令行搜索历史内容

可以通过git命令行来搜索历史内容。

比如要搜索 aaa ,通过 grep 命令,可知搜不到:

powershell 复制代码
➜  test0402 git:(main) grep -r aaa .
➜  test0402 git:(main)

使用以下命令搜索:

powershell 复制代码
git log -S'aaa' -p

结果如下:

powershell 复制代码
commit 4daf5988f299e711fb821dc956b9463c27400052 (HEAD -> main, origin/main, origin/HEAD)
Author: dukeding <kaiding@cn.ibm.com>
Date:   Fri Mar 8 14:15:19 2024 +0800

    Update test.txt

diff --git a/test.txt b/test.txt
index 90d2f06..2975aa0 100644
--- a/test.txt
+++ b/test.txt
@@ -1 +1 @@
-test aaa test
+test bbb test

commit d77ab62652abeb1a06eddd7f7cf76ed7720e8b97
Author: dukeding <kaiding@cn.ibm.com>
Date:   Fri Mar 8 14:10:24 2024 +0800

    Create test.txt

diff --git a/test.txt b/test.txt
new file mode 100644
index 0000000..90d2f06
--- /dev/null
+++ b/test.txt
@@ -0,0 +1 @@
+test aaa test

可见,列出了 aaa 出现的commit,以及 aaa 消失的commit,这样就可以了解 aaa 的来龙去脉了。

参考

  • https://stackoverflow.com/questions/4705517/github-searching-through-older-versions-of-files
相关推荐
cc蒲公英5 小时前
idea git命令初次创建项目至远程
git
高兴就好(石6 小时前
git将远程的master分支的commit都拉取到本地
git
空空kkk8 小时前
Git版本控制(一)
git
毛豆的毛豆Y9 小时前
git 如何 fork 一个仓库的所有分支
git
测试人社区—841610 小时前
Postman API测试指南
人工智能·git·测试工具·自动化·bug·postman
芒克芒克12 小时前
『Git Tag标签+项目远程操作全解:推送、拉取与版本同步实战』
java·git
fruge13 小时前
前端工程化最佳实践:ESLint+Prettier+Git Hooks 统一开发规范
前端·git
_院长大人_13 小时前
解决 Git 提交大文件导致 Push 被拒绝的问题
java·git·后端·elasticsearch
浪潮IT馆13 小时前
win11安装Git
windows·git
SoulmateShkart14 小时前
Git基本使用命令简略版
git