在 GIT 中查找添加了特定字符串的提交 [重复]

Posted

技术标签:

【中文标题】在 GIT 中查找添加了特定字符串的提交 [重复]【英文标题】:Finding a commit in GIT which added a specific string [duplicate] 【发布时间】:2015-05-08 06:02:55 【问题描述】:

我正在寻找一个 git 命令,它可以让我找到添加了特定字符串的所有提交。

字符串也可以是正则表达式,我还想在提交中检索与该表达式匹配的特定字符串。

示例 -

我想查找模式 - // FIX - BUG-XXXX 添加到文件中的所有提交。包括匹配行,例如:// FIX - BUG-1234// FIX - BUG-2345 等等

【问题讨论】:

我认为没有任何直接的 git 方式可以做到这一点。您可以创建一个 shell 脚本,它执行 git log(获取提交)- > git show(检查提交中发生了什么)- > grep(检查正则表达式 ++.*)... 在这些行的某个地方。 .. 【参考方案1】:

据我所知,没有一种特定的方法可以轻松地检查文件中的特定字符串。

我猜你想要git-blame。

对于您想要找出谁进行更改的文件,您可以运行以下命令:

main.cs

$ git blame -L 40,60 main.cs

这将搜索 main.cs 中的第 40-60 行以查找任何更改,并将其报告给您。

【讨论】:

以上是关于在 GIT 中查找添加了特定字符串的提交 [重复]的主要内容,如果未能解决你的问题,请参考以下文章

恢复到 Git 中的特定提交 [重复]

如何从特定修订版更改 GIT 中提交的作者 [重复]

如何告诉 git 忽略个别行,即特定代码行的 gitignore [重复]

为什么在git中添加和提交? [重复]

将旧更改移出主分支 [重复]

用于一次性添加(不提交)所有新文件的 Git 命令 [重复]