给出我的文件列表,例如foo/src/main.cpp, foo/src/bar.cpp, foo/README.md
,可以确定其中的哪些文件是bazel软件包的一部分?在我的示例中,输出例如为foo/src/main.cpp, foo/src/bar.cpp
,因为README.md不会包含在构建中。
执行此操作的一种方法是在每个文件上调用bazel query
并查看它是否产生输出,但这效率很低,所以我想知道是否有更简单的方法。
背景:我试图确定一组文件中的更改是否对目标有影响,并且我想为此使用bazel query somepath(//some/target, set($FILES))
,但是如果[ C0]不属于BUILD文件。
$FILES
然后检查结果是否包含集合中的任何文件