查找HTML文件中已更改的文本字符串

时间:2015-09-03 13:32:17

标签: html git grep

我需要更改我的网络应用中使用的一些术语。我的git存储库中有一堆HTML文件,我想在HTML的 text 中找到所有出现的某些字符串。我不想匹配标签中的字符串,因为更改它也需要更改我的脚本。也许我会在以后更改它们以保持一致性,但是现在我只想关注UI。

假设我想用其他东西替换“评估”。给出:

<li ng-repeat="item in assessments">
     <h4>Assessment {{item.title}}</h4>
</li>

我只是想知道第二行有什么东西需要改变。

1 个答案:

答案 0 :(得分:0)

Git有一个名为textconv的功能,可以在呈现之前对文件进行转换。通常这用于显示二进制文件的差异,但您可以使用它来转换任何内容。

  1. 安装html2text
  2. 将此添加到您的~/.gitconfig

    [diff "html"]
        textconv=html2text
    
  3. 将此添加到存储库的.gitattributes文件中:

    *.html diff=html
    
  4. 使用git grep选项运行--textconv

    git grep --textconv -i assessment -- *.html
    # * *** Assessment {{item.title}} ***
    
  5. 默认情况下,git grep关闭Textconv,但默认情况下为git diff。因此,您可能希望在完成后从.gitattributes删除该行,否则您必须运行git diff --no-textconv以查看对标记的更改(并制作修补程序)。