Build 是否有生成系统不使用时间戳检查文件更改

Build 是否有生成系统不使用时间戳检查文件更改,build,makefile,Build,Makefile,构建系统,如使用时间戳检查是否在两次构建期间更改了依赖项。以下是我在使用时间戳时遇到的一些常见问题 打开一个文件,做一些更改,但后来,我决定这是不好的。例如,如果我在项目中使用git,我会还原更改,git checkout--file 打开一个文件,我只是无意中点击了保存编辑器的快捷键 无论哪种方式,文件的时间戳都会更改。如果现在我想构建这个项目,需要重建依赖于该文件的所有内容。这通常意味着整个项目 在这些问题上是否存在任何问题?例如,使用版本控制检查文件更改的构建系统,最好是git。或上述

构建系统,如使用时间戳检查是否在两次构建期间更改了依赖项。以下是我在使用时间戳时遇到的一些常见问题

  • 打开一个文件,做一些更改,但后来,我决定这是不好的。例如,如果我在项目中使用git,我会还原更改,
    git checkout--file
  • 打开一个文件,我只是无意中点击了保存编辑器的快捷键
无论哪种方式,文件的时间戳都会更改。如果现在我想构建这个项目,需要重建依赖于该文件的所有内容。这通常意味着整个项目

在这些问题上是否存在任何问题?例如,使用版本控制检查文件更改的构建系统,最好是git。或上述问题的任何其他解决方案都是受欢迎的

非常感谢。默认情况下使用。然而,校验和需要读取磁盘上所有源文件的所有内容,这比简单地读取目录条目要慢得多,这就是大多数构建系统使用时间戳的原因


对这些问题进行了很好的概述。

校验和链接已失效。@krlmlr已修复。我使用web.archive.org查看了一个旧版本的页面,用它在谷歌上搜索了一个最近的链接,并编辑了答案。你也可以对你在这个网站上遇到的死链接做同样的处理。