如何在TortoiseGit‘检查修改’窗口用--ignore-matching-lines过滤自动生成日期?
在TortoiseGit“检查修改...”窗口过滤自动生成日期的变更
TortoiseGit没有直接在“检查修改”窗口内置忽略特定行的开关,但可以通过以下两种方式实现和git diff --ignore-matching-lines=" \* generated: .+"相同的效果:
方法1:配置TortoiseGit的Diff查看器参数
- 右键点击项目空白处,选择「TortoiseGit」→「设置」
- 切换到「Diff Viewer」选项卡
- 点击「External Diff Viewer」区域的「Advanced」按钮
- 在弹出的窗口中,给「Diff Command Arguments」添加参数:
--ignore-matching-lines=" \* generated: .+"- 若使用TortoiseGit内置diff查看器,可能需要先切换为外部diff工具(如Beyond Compare)再配置;若坚持用内置工具,可通过修改全局Git配置实现
- 保存设置后,重新打开“检查修改...”窗口,查看文件差异时会自动忽略匹配生成日期的行
方法2:全局配置Git的自定义Diff规则
- 打开Windows CMD,执行命令配置全局自定义diff驱动器:
git config --global diff.generated.command 'git diff --ignore-matching-lines=" \* generated: .+"' - 在项目根目录的
.gitattributes文件中添加(根据你的文件后缀调整):*.c diff=generated *.h diff=generated - 配置完成后,TortoiseGit“检查修改”窗口显示这些文件的差异时,会自动过滤生成日期行的变更
注意:以上方法仅影响差异的显示效果,Git仍会将这些文件标记为已修改(因为文件内容确实有变化)。如果要让Git完全不跟踪这类行的变更,需要结合gitattributes的smudge/clean过滤器做内容转换,这属于更进阶的配置。
内容的提问来源于stack exchange,提问作者AdamL
相关产品推荐
相关产品推荐

