排除目录 clang 格式

And*_*rey 5 git scripting clang-format

文件中是否有任何官方指令.clang-format来排除申请目录?

项目有时使用git submodule,但运行clang-format所有目录然后用于git checkout撤消子模块文件夹中的更改是没有用的。

我找到了一些相关链接:

但他们似乎不是官方的。

Fat*_*lad 7

如果您可以添加新的 _clang 格式文件(尽管在这种情况下看起来您不能?)您可以创建一个新文件

DisableFormat: true
SortIncludes: false
Run Code Online (Sandbox Code Playgroud)

显然,如果您不能添加新的 _clang 格式文件,这将不起作用:)


Pat*_*aña 4

到目前为止,我不知道 clang-format 是否有任何选项可以排除文件或目录。但我所做的是在 bash 脚本中创建我想要处理的文件列表,然后为它们调用 clang-format :

#!/bin/bash
folder=.
exclude_folder=./submodule
format_files=`find "${folder}" -type f -path "${exclude_folder}" -prune

for file in $format_files
do
  clang-format -i "$file"
done
Run Code Online (Sandbox Code Playgroud)

这里的魔力是由 find 中的 prune 选项完成的。(如何在 find . 命令中排除目录)。

希望这至少对你有帮助。