在 git 历史记录中的多个文件中查找所有版本的文本

问题描述

我的 git 存储库中有多个文件,其中有一行 Interface = x。我可以使用正则表达式从文本中得到它。我需要:

  1. 按扩展名查找所有文件
  2. 获取他们的文本历史记录(x 更改的位置)
  3. 输出作者、日期和行文本。最好保存到文件

我目前的进展:

我可以像这样按扩展名找到所有文件

git ls-files '*.myExt'

我用这个命令找到了单个文件的文本历史

git log --follow -p --date=iso --pretty=format:"%an %cd" -- "myFilePath"

文档中提到的 -L 参数仅用于查找某些行,但我要查找的文本可以位于不同的行上。

我也只对那条线路的更改感兴趣。例如,如果历史是

Interface = 5 2021/01/01
Interface = 5 2020/12/20
Interface = 5 2020/12/10
Interface = 4 2020/11/24
Interface = 4 2020/05/04
Interface = 3 2020/05/01

我只想

Interface = 5 2020/12/10
Interface = 4 2020/05/04
Interface = 3 2020/05/01

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)