You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何让clang-format忽略部分生成的C源文件?

如何让clang-format忽略指定文件?

当然可以,有几种实用方法来让clang-format跳过自动生成的文件:

  • 在.clang-format配置文件中全局排除
    在项目根目录的.clang-format文件里添加Excludes字段,用通配符指定要忽略的文件或目录,所有团队成员执行clang-format时都会自动跳过这些路径:

    ---
    Excludes:
      - "src/generated/*.c"
      - "build/autogen/**/*"
    ...
    
  • 给生成文件添加特殊注释标记
    在自动生成的C文件开头添加// clang-format off注释,clang-format会跳过整个文件的格式化;如果只想跳过部分内容,在需要忽略的代码块前后分别加上// clang-format off和// clang-format on:

    // clang-format off
    // 以下为自动生成代码,无需格式化
    #include "autogen_header.h"
    void auto_gen_func() {
        // 生成的代码内容
    }
    // clang-format on
    
  • 命令行执行时手动排除
    运行clang-format时用--exclude参数指定要跳过的文件:

    clang-format -i --exclude="src/generated/*.c" src/**/*.c
    

    使用git clang-format时,可通过git路径排除语法跳过目标文件:

    git clang-format -- src/**/*.c ':!src/generated/*.c'
    

内容的提问来源于stack exchange,提问作者thoni56

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.26 08:18:26