【发布时间】:2019-06-05 07:41:41
【问题描述】:
如果我有生成 makefile 和项目文件的 cmake 构建系统,我应该提交 makefile 并将其推送到 git repo 吗?这样做有什么好处和坏处?
如果不是,那么在每次拉取之后和构建之前,我们需要使用 cmake 再次生成所有内容吗?
另外,如果我生成了 makefile 和构建目标,然后更改了源文件,然后再次生成了 makefile(这是不必要的),cmake 会知道什么已经是最新的吗?或者它会重新从头开始构建?
【问题讨论】:
-
"然后在每次拉取之后和构建之前,我们需要使用 cmake 再次生成所有内容" - 完全正确。 “如果我生成了 makefile 和构建目标,然后更改了源文件,然后再次生成了 makefile(这是不必要的),cmake 会知道什么已经是最新的吗?” - CMake 将生成 makefile,它会关心检测源文件中的更改。
-
您永远不应该将构建产品检查到您的存储库中。将它们签入只会产生差异噪音并让文件变得不同步,从而导致错误。